lombok建造者模式支持父类
发表于|更新于
|浏览量:
精力充沛的青春,是不怎么容易灭亡的。——卡罗萨
使用@SuperBuilder注解代替原本的@Builder就可以了
如果对建造者模式不太了解的,可以看我以往写的博客:
https://VampireAchao.github.io/2020/11/08/%E5%BB%BA%E9%80%A0%E8%80%85%E6%A8%A1%E5%BC%8F/
这里做个对比,加之前:



加之后:


可以看到子类开始的建造者模式成功访问到父类属性,不过最终获取到的还是父类
如果想要最终获取到的还是子类,可以在父类也使用@SuperBuilder
不过父类的父类也要有@SuperBuilder

相关推荐
2021-08-19
java读取本地目录的文件转换为list
不在沉默中爆发,就在沉默中灭亡。——鲁迅 我读取了我的全部博客内容并转换成了一个List<String> 代码如下: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566import java.io.*;import java.util.Arrays;import java.util.Collections;import java.util.List;import java.util.Optional;import java.util.stream.Collectors;class Scratch { public static void main(String[] args) throws Exception { List<File> fileNames = getFileNames("D:/file/blog...
2021-10-24
动态参数+reduce累加stream
通向面包的小路蜿蜒于劳动的沼泽之中,通向衣裳的小路从一块无花的土地中穿过,无论是通向面包的路还是通向衣裳的路,都是一段艰辛的历程。 ——福斯 今天有朋友问我,stream中如果要将一个User类中的username和id收集起来变成两个list怎么写,我说可以使用peek函数 1234567@Data@AllArgsConstructorstatic class User { private Long id; private Long groupId; private String username;} 就像这样: 1234567891011 // 用户列表 List<User> userList = Stream.iterate(1L, i -> ++i).map(id -> new User(id, 999L, Faker.instance().name().username())).limit(10).collect(Collectors.toList()); // 要收集起来...
2023-11-13
webflux中操作符调试
生命不息,奋斗不止。——卡莱尔 分享一个小技巧,在webflux开发中,我们可以在主启动类上加这么一行代码: 1Hooks.onOperatorDebug(); 这行代码的用处是注册一个回调函数,可以打印操作符信息,举个例子: 12345678910111213141516import reactor.core.publisher.Flux;import reactor.core.publisher.Hooks;public class DebugExample { public static void main(String[] args) { Hooks.onOperatorDebug(); // 启用操作符调试 Flux<Integer> flux = Flux.just(1, 2, 3, 4) .map(i -> i / 0); // 这里会触发除以零的异常 flux.subscribe( value -> Syst...
2022-10-29
exeBuilder
爱惜衣裳要从新的时候起,爱惜名誉要从幼小的时候起——普希金 有些时候我们需要将java应用程序打成exe文件执行,此时可以使用 https://gitee.com/qsyan/ExeBuilder
2022-07-31
javadoc @apiNote、@implSpe、@implNote不识别问题
在逆风里把握方向,做暴风雨中的海燕,做不改颜色的孤星。——余光中 我们使用maven-javadoc-plugin进行生成javadoc时,发现没有识别jdk8新标签 解决方式见:https://github.com/nipafx/demo-javadoc-8-tags/blob/master/pom.xml?ts=4#L110-L133 手动配置tags即可 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980<build> <plugins> <!-- Maven编译插件 --> <plugin> <groupId>org.apache.maven.plugins</groupId> ...
2024-01-30
新版阿里云内容安全对接
只有不够聪明的人才批评、指责和抱怨别人。但是,善解人意和宽恕他人,需要培养和自制的功夫。——卡耐基 文档: 图片审核增强版SDK_内容安全(Content Moderation)-阿里云帮助中心 代码: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475import cn.hutool.core.thread.AsyncUtil;import cn.hutool.core.util.RandomUtil;import com.alibaba.nacos.common.utils.JacksonUtils;import com.aliyun.auth.credentials.Credential;import com.aliyun.auth.credentials.provider.StaticCredentialProvider;import co...

阿超
我的名字叫阿超 年龄25岁 家在北京市 职业是软件开发 每天最晚也会在八点前回家 不抽烟 酒浅尝辄止 晚上十二点上床 保证睡足八个小时 睡前写一篇博客 再做二十分钟俯卧撑暖身 然后再睡觉 基本能熟睡到天亮 像婴儿一样不留下任何疲劳和压力 就这样迎来第二天的早晨 健康检查结果也显示我很正常 我想说明我是一个不论何时都追求内心平稳的人 不拘泥于胜负 不纠结于烦恼 不树立使我夜不能寐的敌人 这就是我在这社会的生活态度
Follow Me公告
This is my Blog