Dra-M Dra-M
首页
技术
冥思
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

莫小龙

保持理智,相信未来。
首页
技术
冥思
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Java基础

  • Spring

    • 彻底透析SpringBoot jar可执行原理
    • 使用Hibernate-validator的Notnull等注解校验参数并使用全局异常处理
    • SpringBoot+Swagger,快速构建REST API文档
    • Spring&kotlin 异常 NoClassDefFoundError
    • PageHelper不生效问题
    • SpringDataJpa一些注意事项
      • 属性一致校验
      • 手写Update
      • save方法默认会空值覆盖
      • save在无Id时是新增,有Id时是修改
      • 自动更新创建时间和修改时间
      • 指定索引
      • 逻辑删除
    • SpringDataJpa的动态条件查询和分页查询
  • 微服务

  • Elasticsearch

  • 实用工具

  • Bash

  • DevOps系列

  • 技术
  • Spring
莫小龙
2020-07-13
目录

SpringDataJpa一些注意事项

# 属性一致校验

entry.属性=:参数 类型不一致报错,而且Date和LocalDate框架不能自己转换...必须一致。

而且,这种错要到调用时才能报错...

# 手写Update

手写Update除了@Query外还要加@Modifying,同时必须开启事物,如果不需要事务,可以在接口里直接加@Transactional。

# save方法默认会空值覆盖

在实体类添加注解,在save时如果是空值就忽略,否则会将数据库覆盖为空。

@DynamicInsert
@DynamicUpdate
1
2

# save在无Id时是新增,有Id时是修改

所以在新增接受前端对象时要对id做set null,以免被当作修改。

# 自动更新创建时间和修改时间

对应字段添加注解

@CreatedDate
@LastModifiedDate
1
2

实体类添加注解

@EntityListeners(AuditingEntityListener.class)
1

SpringBoot启动类添加注解

@EnableJpaAuditing
1

另外数据库添加相应控制也可以: createTime : CURRENT_TIMESTAMP modifyTime : CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP

# 指定索引

@Table(name = " ",indexs = { @Index(columnList="col1,col2") })
1

# 逻辑删除

@SQLDelete(sql = "update table set is_deleted=1 where id = ?")
@Where(caluse = "is_deleted=1")
1
2

#SpringDataJpa
上次更新: 3/5/2021
PageHelper不生效问题
SpringDataJpa的动态条件查询和分页查询

← PageHelper不生效问题 SpringDataJpa的动态条件查询和分页查询→

最近更新
01
易混淆哲学用语释义
04-13
02
前言:搭建一套自有的围绕K8S的DevOps工具
04-11
03
部署K8S -- kubeasz
04-11
更多文章>
Theme by Vdoing | Copyright © 2019-2022 Dra-M | 冀ICP备2021002204号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式