1. 实体类加上 lombok的@builder之后  就不能新建对象了,,,构造函数被覆盖了?

加上两个标签之后解决

2.Lombok存在的一些问题

lombok问题

@Builder和@NoArgsConstructor同时使用时会报错

两个同时使用时需要加上@AllArgsConstructor全参构造函数

数据库对应实体的BO使用了@Builder必须要需要加上@NoArgsConstructor和@AllArgsConstructor

因为mybatis必须要有@NoArgsConstructor创建无参构造函数才能进行操作

实体类上如果有属性有初始化值需要在属性上加@Builder.Default

@Accessors(chain = true)使用注意:使用了这个注解,clone对象不能被赋值

序列化问题

枚举加了@JsonSerialize(using = JsonEnumSerializer.class)注解,序列化时用jackson会报错,需要用fastJson

使用select... for update加悲观锁的sql语句必须加事务

spring中update操作会自动commit,select不会自动commit

https://juejin.im/post/5ce6092ce51d4510b71da563

mysql 字段越多查询越慢,尽量需要哪些字段就查哪些字段

不加索引,条件查询很慢,45000条带不加索引的条件,查询出一条要2.5秒,添加索引后只要0.02秒

组合索引,是最左前缀原则

alter table recharge_card_information add index index_card (card_no,card_money,CARD_PASSWORD) ;

最左前缀原则 :必须要带上card_no条件,card_money,CARD_PASSWORD的索引才会生效

组合索引生效的条件 :

where 后带card_no、where 后带card_no和card_money、where 后带card_no和CARD_PASSWORD

或者 where后带card_no,card_money,CARD_PASSWORD。

总之必须带最左的条件

链接:https://www.jianshu.com/p/f47b59dd347e

lombok的@builder 不能新建DO对象 Lombok存在的一些问题的更多相关文章

  1. Lombok之@Builder注解

    Lombok之@Builder注解 前言 Lombok大家都知道,在使用POJO过程中,它给我们带来了很多便利,省下大量写get.set方法.构造器.equal.toString方法的时间.除此之外, ...

  2. 使用lombok的@Builder的注解的一个坑

    一开发说项目报错 java.lang.Long,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lan ...

  3. sau交流学习社区--在element-ui中新建FormData对象组合上传图片和文件的文件对象,同时需要携带其他参数

    今天有一个坑,同时要上传图片和文件,而且图片要展示缩略图,文件要展示列表. 我的思路是: 首先,只上传附件照片,这个直接看ele的官方例子就行,不仅仅上传附件照片,还同时上传其他参数. 然后,再做上传 ...

  4. JSON序列化不想新建很多对象实体怎么办

    不用新建对象,而是用JSONObject 相当于Map类型,重复的key 会覆盖 //序列化JSONObject jsonObject = new JSONObject();jsonObject.pu ...

  5. 从RAM新建QIcon对象 / Create a QIcon from binary data

    一般,QIcon是通过png或ico等图标文件来初始化的,但是如果图标资源已经在内存里了,或者一个zip压缩文件内,可以通过QPixmap作为桥梁,转换为图标. zf = zipfile.ZipFil ...

  6. 如何在Flash Builder里新建ActionScript工程

    新建ActionScript工程 1. File > New > ActionScript Project 2. 按照提示完成工程的创建 使程序直接在Flash Player中运行 1. ...

  7. php新建数据库对象 基础知识

    数据访问 结合html 数据库 PHP面向对象的方式函数的方式 1建立通道 MySQLi 类通过构造函数造出 连接数据库地址 uesername 连接用户名 passwd dbname port so ...

  8. PyQt中从RAM新建QIcon对象 / Create a QIcon from binary data

    一般,QIcon是通过png或ico等图标文件来初始化的,但是如果图标资源已经在内存里了,或者一个zip压缩文件内,可以通过QPixmap作为桥梁,转换为图标. zf = zipfile.ZipFil ...

  9. EF6 在原有数据库中使用 CodeFirst 总复习(四、新建实体对象)

    在原有数据库中使用 CodeFirst ,除了第一次添加实体后要立即执行一次 Enable-Migrations add-migration Initial  -IgnoreChanges updat ...

随机推荐

  1. Docker仓库--registry与harbor

      搭建私有仓库的两种方式: Registry Harbor  一.registry的搭建 docker官方提供了一个搭建私有仓库的镜像registry,只需下载镜像,运行容器并暴露5000端口即可. ...

  2. [题解]Mail.Ru Cup 2018 Round 1 - A. Elevator or Stairs?

    [题目] A. Elevator or Stairs? [描述] Masha要从第x层楼去第y层楼找Egor,可以选择爬楼梯或者坐直升电梯.已知爬楼梯每层需要时间t1:坐直升电梯每层需要时间t2,直升 ...

  3. SRv6规模部署,离不开测试技术保驾护航!

    什么是SRv6? SRv6技术就是采用现有的IPv6转发技术,通过扩展IPv6报文的头域,实现类似标签转发的处理.SRv6将一些IPv6地址定义成实例化的SID(Segment ID),每个SID有着 ...

  4. 零基础小白也能用的商业智能BI工具,自助式就是香!

    ​随着数字化时代的到来,数据已经成为企业无形的资源,企业对员工的数据分析能力也提出了新的要求.掌握一定的数据分析能力无疑会大大增加自己在职场中的竞争力,但并不是所有人都具备专业的数据分析基础,尤其是虽 ...

  5. 超强可视化图表工具:Smartbi!!

    要制作出专业的可视化图表,还是需要一定的学习成本的,并且需要大量的时间.并且即使是制作出来,配色也是一大难题,对于一般人而言,通常会通过两种方式实现可视化大屏的制作: 1.写代码 大部分人可能会选择大 ...

  6. 开发Windows程序的三种方式

    软件开发方式一共有三种:SDK方式.MFC开发方式.托管环境的开发都是基于消息的开发 SDK方式 原装api的调用SDK方式使用C语言和Windows应用程序编程接口(Windows API)来开发W ...

  7. Shell脚本编写登陆小程序.sh

    转至:https://www.cnblogs.com/gaohongyu/articles/12072594.html #!/bin/bash #Author:GaoHongYu #QQ:106176 ...

  8. Visual Studio 文字样式背景设置

    菜单栏 "工具"->选项->环境->常规

  9. C语言刷 堆(优先队列)

    703. 数据流中的第 K 大元素 /* 小根堆 */ typedef struct { int heapCapacity; int heapSize; int *heap; } KthLargest ...

  10. 阿里云 elk 搭建

    1.logstash通过redis收集日志. logstash > redis>logstash  >es k8s日志挂载 tong sudo umount -t glusterfs ...