I'm learning spring 5 MVC with spring data JPA and sql queries
I'm trying to use a native query in my spring api restful example but when I run the project, my method returns an empty json object.
My Model class
@Entity
@Table(name = "bicycle")
public class Bicycle
{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long id;
@Column(name="name")
private String name;
@Column(name="year")
private int year;
}
My repository class
@Repository
public interface BicycleRepository extends CrudRepository<Bicycle, Long>
{
@Query(value = "SELECT * from db_bicycles.bicycle", nativeQuery = true)
public List<Bicycle> obtenerTodos();
}
My controller class
@RestController
@RequestMapping("/api")
public class BicycleController
{
@Autowired
private BicycleRepository bicycleRepository;
//create get all bicycles
@GetMapping("/bicycles")
public List<Bicycle> getAllBicycles()
{
return bicycleRepository.obtenerTodos();
}
}
My application properties
spring.datasource.url=jdbc:mysql://localhost/db_bicycles?useUnicode=true&useJDBCCompilantTimeZoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.jpa.show-sql=true
This table have 2 rows.