Java开发神器 @Builder
我们在开发过程中经常需要new一个对象,然后调用该对象的set方法进行设置值,类似下面这样,我们发现写起来比较麻烦
Hello hello = new Hello();
hello.setId(1);
hello.setName("测试");
hello.setCreateTime(new Date());
一、@Builder写法
先看效果
Hello hello = Hello.builder().id(1).name("测试").createTime(new Date()).build();
或者
Hello hello = Hello.builder()
.id(1)
.name("测试")
.createTime(new Date())
.build();
二、如何用?
-
添加lombok依赖 (添加SpringBoot依赖不需要写版本号)
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency>
-
安装lombok插件
-
在Java对象上添加@Builder注解即可
@Data @Builder @NoArgsConstructor @AllArgsConstructor @Table(name = "t_hello") public class Hello { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Integer id; private String name; private Date createTime; private Date updateTime; private Integer delFlag; }
三、实战
- 在项目中我一般是结合通用mapper使用,因为通用mapper是操作对象比如下面
- 修改用户信息
// 构建用户修改对象 Member record = Member.builder() .id(userInfoReq.getUserId()) .nickname(userInfoReq.getNickname()) .des(userInfoReq.getUserDesc()) .sex(userInfoReq.getUserSex()) .build(); int count = memberMapper.updateByPrimaryKeySelective(record);
- 查询时候
// 查询该订单 OrderInfo one = orderInfoMapper.selectOne(OrderInfo.builder().outTradeNo(outTradeNo).build());
四、最后的话
-
网络不好直接去jetbrains官网下载,然后通过本地插件安装进行安装
下载地址:https://plugins.jetbrains.com/plugin/6317-lombok/ -
百度云下载链接
链接:点我下载 提取码:0eb2
-
有不足的地方,希望评论指出,共同学习!!!