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

相关推荐
2022-12-16
获取泛型map工具类
一个人如果抛弃他忠实的朋友,就等于抛弃他最珍贵的声明。——索福克勒斯 代码如下: 1234567891011121314151617181920212223242526public static Map<String, Type> getGenericMap(Type paramType) { Type type = resolveType(paramType); if (type instanceof ParameterizedTypeImpl) { ParameterizedTypeImpl ty = (ParameterizedTypeImpl) type; final Class<?> rawType = ty.getRawType(); return Steam.of(rawType.getTypeParameters()).map(Type::getTypeName) .zip(Steam.of(ty.getActualTypeArgum...
2021-01-11
BCryptPasswordEncoder
今眼前的迷雾已然消散,自由、祖国,唯有你们才是我的信念。——雨果 在web开发中我们可以使用org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder来进行密码加密 这里写一个Demo说明一下基本姿势 123456789101112131415161718192021222324252627282930313233package com.ruben;import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;import java.util.Collections;import java.util.List;import java.util.stream.Collectors;import java.util.stream.Stream;/** * @ClassName: BCryptPasswordEncoderDemo * @Description: 我还没有写描述 * @Date: 2021/1/11 0011 20:...
2023-03-12
新版jdk的peek坑
旅游是获得愉悦感和浪漫性的最好媒介——麦金托什 代码如下: 12345678910import java.util.Arrays;import java.util.List;class Scratch { public static void main(String[] args) { List<Integer> list = Arrays.asList(1, 2, 3, 4); long count = list.stream().peek(System.out::println).count(); System.out.println(count); }} 这段代码在java8中则会如下输出 但在java11的时候却只会输出最终的一次count,这说明count并不会导致peek执行 javadoc也写了 所以升级jdk版本的话需要注意这一点
2024-03-01
xcode报错SDK does not contain 'libarclite' at the path
希望是附丽于存在的,有存在,便有希望,有希望,便是光明。 —— 鲁迅 今天报错: 123SDK does not contain 'libarclite' at the path '/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_iphonesimulator.a'; try increasing the minimum deployment target 解决方式,下载: https://github.com/kamyarelyasi/Libarclite-Files/blob/main/libarclite_iphoneos.a 放到 1/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc 即可
2022-11-14
java ics解析ical4j
提防那种从不还手的人;他们既不肯宽恕你,也不容许你宽恕自己——萧伯纳 分享一个java解析ics的库 https://www.ical4j.org/ 安装: 123456789101112<project> ... <dependencies> <dependency> <groupId>org.mnode.ical4j</groupId> <artifactId>ical4j</artifactId> <version>1.0.2</version> </dependency> ... </dependencies> ...</project> 使用:https://www.ical4j.org/examples/parsing/ 我这里是获取节假日信息,数据来源:节假日补班日历 可以直接用hutool-HttpUtil 1HttpUtil.get("https:...
2023-10-05
springboot+camel对接minio上传下载
不要相信任何人,凡事都要自己用心,即使是有意让人恭维,也是可怕的。——爱·杨格 昨天我们已经实现了 minio上传下载 今天我们集成camel方式,相应的参数文档: Minio :: Apache Camel 首先是依赖: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.a...

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