解决spring boot jpa查询,语句正确,返回为空问题

JPA(Hibernate),拥有很强大的能力,极大简化DAO层的开发

Spring Boot实现的是一站式全包,但是数据库是比较特殊的存在,在开发时可以使用Embedded数据库如DerBy等,但是实际环境下,都会把数据库分离到另一台专用服务器,在连接的时候,可能会出现和开发时不一样的各种BUG

 调用查询接口,结果如下:

[
    {},
    {},
    {}
]

在调用它的时候会返回null

原因有2

1.传进去的参数可能不正确

需要我们debug或输出,细细查看

2.查询字符串有中文

原因可能是字符集的锅,在windows上的MySQL数据库默认使用UTF-8,而linux上通过apt安装的MySQL默认是latin
application.properties文件database 的 url后面加上?useUnicode=true&characterEncoding=utf-8声明,此次连接使用utf-8字符集

spring.datasource.url=jdbc:mysql://localhost:3306/students?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=GMT%2B8

再来查询:

参考文章:

https://www.jianshu.com/p/d001a62ecdaa

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值