![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spring Data JPA
ForMyTime
程序媛的时代
展开
-
Spring Data JPA 资料总结
奇文共欣赏,疑义相与析。前言: 纵观市场上的ORM框架,Mybatis以灵活著称,但要维护复杂的配置,并且不是Spring官方的天然全家桶,Hibernate以HQL和关系映射著称,但是用起来不灵活。Spring Data JPA与SpringBoot搭配起来有天然的优势,越来越多的开发从Spring、Mybatis开发转向SpringBoot、Spring Clou...原创 2019-05-17 17:37:31 · 272 阅读 · 0 评论 -
@Version乐观锁
相信大家都很清楚乐观锁和悲观锁的区别了。悲观锁的做法:乐观锁的做法:本次查询带上上次查询的version,保证了数据的原子性。比如,实体中的updateTime 加上@Version注解,就实现了乐观锁当乐观锁更新失败时,抛出异常org.springframework.orm.ObjectOptimisticLockingFailureException...原创 2019-05-17 17:52:40 · 1057 阅读 · 0 评论 -
@Query注解的使用
一、@Query 分页的实现 ⚠️/* #pageable# */ 必须要写,不写会报错!!!!二、@Query排序的实现原创 2019-05-17 17:53:32 · 553 阅读 · 0 评论 -
@OneToOne等注解的使用
@OneToOne,@ManyToOne,@OneToMany这几个注解的使用见名知意就知道是一对一,多对一,一对多的关系了。但今天要说的是由于没有正确的使用注解导致查询速度很慢的问题。注意@OneToOne,@ManyToOne注解有一个FetchType枚举属性,分为lazy和eager, lazy表示的是懒加载(即不查询不加载,当查询某个对象时,不会去查询与其关联的对象),而ea...原创 2019-05-17 17:54:53 · 7903 阅读 · 1 评论 -
Spring data JPA 如何使用delete
一般要用JPA删除一条数据:delete(Entity e);delete(id);但是如果根据条件删除的话,一般要先查询再删除,如何只执行一次删除语句呢?@Modifying@Transactional@Query("delete from EngineerServices es where es.engineerId = ?1")int deleteByEgId(...原创 2017-06-01 11:36:12 · 18129 阅读 · 1 评论 -
@Entity等基本注解
1. @Entity :表明是一个实体类 2. @Table :对应的数据表名 3. @Id :主键 4. @GeneratedValue:主键生成策略 5. @Column : 映射表对应的字段名 6. @Basic : 表示该属性是表字段的映射。如果实体的字段上没有任何注解默认就是@Basic 7. @Trans...原创 2019-05-17 17:56:46 · 29342 阅读 · 0 评论 -
@CreateDate等注解的使用
如果你的表每添加一条信息都需要创建人、创建时间,每修改一条信息都需要修改人、修改时间,那不妨在实体类用一下以下的注解吧!@CreatedDate:创建时间@CreatedBy:创建人@LastModifiedDate:最后一次修改时间@LastModifiedBy:最后一次修改人那你想把创建人、修改人设置成什么呢?需要@PrePersist、@PreUpdate...原创 2019-05-17 17:58:52 · 10064 阅读 · 2 评论