Spring Data JPA踩坑记录(@id @GeneratedValue)

 更新时间:2022年07月01日 09:33:07   作者:qq_38844040  
这篇文章主要介绍了Spring Data JPA踩坑记录(@id @GeneratedValue),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

Spring Data JPA踩坑记录

最近在做自己的一个项目时 使用了spring jpa

由于数据库用的是mysql 在给实体类entity 的id给注解时@Id遇到了一个坑 自己找了许久才在stackoverflow 上找到了答案

注意 再查询数据库的时候并不会因此报错 而当你的主键是自增的时候 在添加数据的时候就会报错了


这里写图片描述

这里写图片描述

看看我们的实体类

注意id


这里写图片描述

原因是id jpa默认是auto的策略 也就是主键序列化 而mysql是不支持的 oracle支持的 所有在添加的时候才会报错

所以我们要主动设置id的策略


这里写图片描述

这是坑 特意写出来 让大家(主要是使用jpa新手)不用像我一样踩坑了 注意了

JPA踩坑:No property xxx found for type xxx

问题发现

今天调试一段代码的时候发现有个报错很奇葩。

接口报错:

{
    "errorCode": "01",
    "errorMessage": "服务器出错",
    "returnObject": [
        "Parameter value [1531421824] did not match expected type [java.util.Date (n/a)]; nested exception is java.lang.IllegalArgumentException: Parameter value [1531421824] did not match expected type [java.util.Date (n/a)]"
    ]
}

后台一直报错:

org.springframework.data.mapping.PropertyReferenceException: No property xxxx found for type Xxxx

问题解决

最后发现是同事写JPA@Repository的时候,@Query里面的东西写错了

//这个是错误的,里面是value不是name=。=尴尬
@Query(name="select * from gene_info where  to_days(createtime )= to_days( FROM_UNIXTIME( '?1' ) ) ",nativeQuery=true)
    List<GeneInfo> findAll(String createtime);
//正确的是@Query(value=" xxx",nativeQuery=true)
@Query(value="select * from gene_info where  to_days(createtime )= to_days( FROM_UNIXTIME( '?1' ) ) ",nativeQuery=true)
    List<GeneInfo> findAll(String createtime);

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 详解Spring-Boot集成Spring session并存入redis

    详解Spring-Boot集成Spring session并存入redis

    这篇文章主要介绍了详解Spring-Boot集成Spring session并存入redis,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • java哈希算法HashMap经典面试题目汇总解析

    java哈希算法HashMap经典面试题目汇总解析

    这篇文章主要为大家介绍了java哈希算法HashMap的经典面试题目汇总及问题解析,帮助大家彻底征服面试官,实现薪资自由,有需要的朋友可以借鉴参考下,希望能够有所帮助
    2022-03-03
  • Java多线程通讯之wait,notify的区别详解

    Java多线程通讯之wait,notify的区别详解

    这篇文章主要介绍了Java多线程通讯之wait,notify的区别详解,非常不错,具有一定的参考借鉴借鉴价值,需要的朋友可以参考下
    2018-07-07
  • SpringBoot电脑商城项目删除收货地址的实现方法

    SpringBoot电脑商城项目删除收货地址的实现方法

    这篇文章主要介绍了SpringBoot项目--电脑商城删除收货地址功能实现,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-09-09
  • Java实现用Mysql存取图片操作实例

    Java实现用Mysql存取图片操作实例

    这篇文章主要介绍了Java实现用Mysql存取图片操作实例,本文讲解了使用BLOB类型保存和读取图片的代码实例,需要的朋友可以参考下
    2015-06-06
  • 如何通过JVM角度谈谈Java的clone操作

    如何通过JVM角度谈谈Java的clone操作

    java中仅有的创建对象的两种方式:①.使用new操作符创建对象;②.使用clone方法复制对象。下面这篇文章主要通过JVM角度给大家详细谈谈Java的clone操作的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2018-06-06
  • springboot使用AOP+反射实现Excel数据的读取

    springboot使用AOP+反射实现Excel数据的读取

    本文主要介绍了springboot使用AOP+反射实现Excel数据的读取,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • Java8通过CompletableFuture实现异步回调

    Java8通过CompletableFuture实现异步回调

    这篇文章主要介绍了Java8通过CompletableFuture实现异步回调,CompletableFuture是Java 8 中新增的一个类,它是对Future接口的扩展,下文关于其更多相关详细介绍需要的小伙伴可以参考一下
    2022-04-04
  • 详解JAVA的封装

    详解JAVA的封装

    Java面向对象的三大特性:封装、继承、多态。下面对三大特性之一封装进行了总结,需要的朋友可以参考下
    2017-04-04
  • Java程序连接数据库的常用的类和接口介绍

    Java程序连接数据库的常用的类和接口介绍

    这篇文章主要介绍了Java程序连接数据库的常用的类和接口,包括Connection类和Statement类等,需要的朋友可以参考下
    2015-10-10

最新评论