当前位置: 首页 > news >正文

初学Mybatis之 Lombok 篇

idea 安装 Lombok 插件:

File->Settings->Plugins->搜索 lombok 下载

在项目中导入 lombok 的 jar 包:

<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.34</version>
</dependency>

在实体类上加注解:

@Data,包含无参构造、get、set、toString、hashcode、equals

@AllArgsConstructor,有参构造(显式地定义了有参构造,无参构造只能手动赋值)

@NoArgsConstructor,无参构造

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {private int id;private String name;private String pwd;
}

Structure 结构:

Lombok 插件提供的注解:

@Getter and @Setter
@FieldNameConstants
@ToString
@EqualsAndHashCode
@AllArgsConstructor, @RequiredArgsConstructor and @NoArgsConstructor
@Log, @Log4j, @Log4j2, @Slf4j, @XSlf4j, @CommonsLog, @JBossLog, @Flogger, @CustomLog
@Data
@Builder
@SuperBuilder
@Singular
@Jacksonized
@Delegate
@Value
@Accessors
@Tolerate
@Wither
@With
@SneakyThrows
@StandardException
@val
@var
@UtilityClass

Lombok 优点:

1.通过注解自动生成构造器、getter、setter、equals、hashcode、toString 等方法,提交开发效率

2.不用过多关注相应方法

3.属性修改时,简化维护这些属性生成的 getter、setter 方法等

Lombok 缺点:

1.不支持多种参数构造器的重载

2.降低源码可读性和完整性

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 微信小程序安装vant组件库和使用
  • Python3网络爬虫开发实战(6)异步爬虫
  • 速盾:cdn加速能不能防御攻击?
  • 掀桌子了!原来是咱们的大屏设计太酷,吓着前端开发老铁了
  • 02 Redis安装与启动
  • 【c++刷题笔记-图论】day52: 101.孤岛的总面积 、102.沉没孤岛 、103.水流问题 、104.建造最大岛屿
  • C# 多线程Paralle使用
  • LangChain4j-RAG高级-核心概念
  • 区块链——代码格式检查(prettier、solhint)
  • OD C卷 - 密码输入检测
  • Linux操作系统 -socket网络通信
  • 深入理解计算机系统 CSAPP 家庭作业11.10
  • 【资料分享】2024钉钉杯大数据挑战赛A题思路解析+代码演示
  • vue 当前页面刷新 provide + inject
  • pytorch backbone
  • php的引用
  • hexo+github搭建个人博客
  • Akka系列(七):Actor持久化之Akka persistence
  • Android开发 - 掌握ConstraintLayout(四)创建基本约束
  • Date型的使用
  • ES6简单总结(搭配简单的讲解和小案例)
  • javascript 哈希表
  • JavaScript标准库系列——Math对象和Date对象(二)
  • Java面向对象及其三大特征
  • leetcode386. Lexicographical Numbers
  • 网页视频流m3u8/ts视频下载
  • 深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署
  • Redis4.x新特性 -- 萌萌的MEMORY DOCTOR
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • ​LeetCode解法汇总2696. 删除子串后的字符串最小长度
  • ​人工智能书单(数学基础篇)
  • ​人工智能之父图灵诞辰纪念日,一起来看最受读者欢迎的AI技术好书
  • # Redis 入门到精通(九)-- 主从复制(1)
  • # 计算机视觉入门
  • (003)SlickEdit Unity的补全
  • (HAL)STM32F103C6T8——软件模拟I2C驱动0.96寸OLED屏幕
  • (函数)颠倒字符串顺序(C语言)
  • (数据结构)顺序表的定义
  • (算法)区间调度问题
  • (五)c52学习之旅-静态数码管
  • (详细版)Vary: Scaling up the Vision Vocabulary for Large Vision-Language Models
  • (一)搭建springboot+vue前后端分离项目--前端vue搭建
  • (原創) 是否该学PetShop将Model和BLL分开? (.NET) (N-Tier) (PetShop) (OO)
  • (原創) 未来三学期想要修的课 (日記)
  • .gitignore不生效的解决方案
  • .NET Core MongoDB数据仓储和工作单元模式封装
  • .net core 调用c dll_用C++生成一个简单的DLL文件VS2008
  • .NET Framework 3.5中序列化成JSON数据及JSON数据的反序列化,以及jQuery的调用JSON
  • .NET/C# 使用 #if 和 Conditional 特性来按条件编译代码的不同原理和适用场景
  • .Net6使用WebSocket与前端进行通信
  • .netcore 6.0/7.0项目迁移至.netcore 8.0 注意事项
  • .NET单元测试
  • .net反编译工具
  • .NET企业级应用架构设计系列之开场白
  • .NET运行机制