Ao realizar as devidas importações o meu compilador me retorna o seguinte erro:
'incompatible types: java.util.List<java.lang.Object> cannot be converted to java.util.List<br.com.joaoreisdev.model.Produto>'
Main.Java
package br.com.joaoreisdev;
import br.com.joaoreisdev.model.Produto;
import com.opencsv.bean.CsvToBeanBuilder;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.util.List;
//TIP To <b>Run</b> code, press <shortcut actionId="Run"/> or
// click the <icon src="AllIcons.Actions.Execute"/> icon in the gutter.
public class Main {
public static void main(String[] args) throws FileNotFoundException {
List<Produto> produtos = new CsvToBeanBuilder<>(new FileReader("src/main/resources/products.csv"))
.withType(Produto.class).build().parse();
for (Produto produto: produtos){
System.out.println(produto);
}
}
}
Produto.java
package br.com.joaoreisdev.model;
import com.opencsv.bean.CsvBindByName;
import java.math.BigDecimal;
public class Produto {
@CsvBindByName(column = "ProductID", required = true)
private int id;
@CsvBindByName(column = "ProductName", required = true)
private String name;
@CsvBindByName(column = "Description", required = true)
private String description;
@CsvBindByName(column = "Price", required = true)
private BigDecimal price;
@CsvBindByName(column = "Category", required = true)
private String category;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public BigDecimal getPrice() {
return price;
}
public void setPrice(BigDecimal price) {
this.price = price;
}
public String getCategory() {
return category;
}
public void setCategory(String category) {
this.category = category;
}
}