【发布时间】:2017-06-10 15:35:51
【问题描述】:
我的 MySQL 数据库中有一个表,我试图在我的 Spring Boot 控制器类中使用 Hibernate 访问它。 MySQL 数据库中的表名为AdminTable。 (我的数据库中还有另一个表)。
我没有从我的数据库中取回数据。我做错了什么?
MainController.java
@RestController
@CrossOrigin
public class MainController {
@Autowired
@Qualifier(value = "adminService")
private AdminService adminService;
@RequestMapping(method = RequestMethod.POST, value = "/admin_login")
public String loginAdmin(@RequestBody LoginInformation loginInformation) {
System.out.println(loginInformation.getUsername() + " " + loginInformation.getPassword());
String adminFound = "false";
Iterable<Admin> admins = adminService.findAll();
for (Admin admin : admins) {
if (admin.getUsername().equals(loginInformation.getUsername()) &&
admin.getPassword().equals(loginInformation.getPassword())) {
adminFound = "true";
break;
}
}
return adminFound;
}
}
application.properties
spring.jpa.hibernate.ddl-auto=create
spring.datasource.url=jdbc:mysql://localhost:3306/payment_system
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.username=root
spring.datasource.password=myPass
AdminService.java
public interface AdminService extends CrudRepository<Admin, Long> {}
findAll 方法没有返回任何数据。请指教。
【问题讨论】:
-
其他表呢?您在哪里定义了用于扫描 JPA 的 entityManager 的包?
-
它应该返回什么?您在启动时创建新表,因此不会有数据。
标签: java mysql hibernate spring-boot