Есть model Reader:
public class Reader {
private int id;
@NotEmpty(message = "Name shouldn't be empty!")
@Size(min = 2, max = 100, message = "Name should be between 2 and 100 characters!")
private String name;
@Min(value = 0, message = "Age should be greater than 0!")
private int age;
public Reader(int id, String name, int age) {
this.id = id;
this.name = name;
this.age = age;
}
public Reader(){}
//getters and setters...
}
А так же dao ReaderDao:
@Component
public class ReaderDao {
private final JdbcTemplate jdbcTemplate;
@Autowired
public ReaderDao(JdbcTemplate jdbcTemplate) {
this.jdbcTemplate = jdbcTemplate;
}
public Reader getReader(int id){
return jdbcTemplate.queryForObject("SELECT * FROM reader WHERE reader_id=?",
new BeanPropertyRowMapper<>(Reader.class), id);
}
Я использую метод getReader в контроллере ReaderController:
@GetMapping("/{id}")
public String readerPage(@PathVariable("id") int id,
Model model){
model.addAttribute("reader", readerDao.getReader(id));
Reader reader = (Reader) model.getAttribute("reader");
System.out.println(reader.getId()); // всегда выводит 0
return "readers/profile";
}
И вот на строке с System.out.println всегда выводит 0, также есть метод где берутся все readers и там также у всех id равен 0, как с этим бороться?