java - 为什么与我的外部数据库(Spring/JpaRepository)没有连接?
问题描述
我有外部数据库,我想通过 Spring 中的请求映射查询数据。我已经像这样配置了我的 application.properties 文件:
# ===============================
# = DATA SOURCE
# ===============================
# Set here configurations for the database connection
# Connection url for the database "testdb"
# (I made up the hosting address for security reasons)
spring.datasource.url=jdbc:mysql://23.119.144.321:3306/testdb
# Username and password
spring.datasource.username=root
spring.datasource.password=root
# Keep the connection alive if idle for a long time (needed in production)
spring.datasource.testWhileIdle=true
spring.datasource.validationQuery=SELECT 1
# ===============================
# = JPA / HIBERNATE
# ===============================
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=update
spring.jpa.hibernate.naming-strategy=org.hibernate.cfg.ImprovedNamingStrategy
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
问题:当我尝试从 requestmapping i UserController 请求用户列表时,我只得到一个空列表。我也尝试通过控制器中的gettingUser方法从数据库中获取一个用户,但Spring只返回一个空白页而不是json格式的数据。我不知道问题出在哪里。我在 db 中的 User 表中有 3 条记录(因此 db 不为空)。
解决方案:查看选中的答案。
解决方案
user 是mysql 中的保留关键字。可能这会导致错误,您可以尝试更改实体表名称。然后使用您的应用程序保存一个新用户并使用端点获取结果数据。
推荐阅读
- mongodb - 更改 Kakfa Streams 的状态存储以使用 MongoDB
- html - 对齐与 CSS
- c++ - 使用 TCP 套接字时无法接收任何包
- javascript - 试图获得累积的垂直滚动距离
- java - 如何在片段的警报对话框中使用recycleview
- python - 验证请求中多个字段的最佳方法
- php - ReactJS/PHP 应用程序 - 表单不工作
- hibernate - Criteria Builder:如何为 JSON_OBJECT 使用标签
- javascript - 如何在 Next JS 中删除页面更改的初始化
- java - AOSP/LineageOS Intellij/Android Studio 导入