baolinliu442k 最近的时间轴更新
baolinliu442k

baolinliu442k

V2EX 第 550992 号会员,加入于 2021-07-15 23:09:44 +08:00
baolinliu442k 最近回复了
33 天前
回复了 yiroonli 创建的主题 问与答 做一个自己的“朋友圈”APP
挺不错的,有代码吗
有时候切到其他软件再切回来会卡
他都看到了不直接告诉你,让你沉淀
43 天前
回复了 qq309187341 创建的主题 Vue.js 请教一下 vue-router 中 addRoute 的问题
@walpurgis 一语点醒,我一直在搞动态加载,坑太多了,这样还简单点
44 天前
回复了 xuxueli 创建的主题 Java XXL-BOOT v1.0.0 | 快速开发平台
感觉现在很少用模板引擎了
可以套个模板方法


abstract class CheckableIReportHandler implements IReportHandler {
void handleWithCheck(AacmReportInsertBo aacmReportInsertBo) throws IllegalAccessException {
check(aacmReportInsertBo);
handle(aacmReportInsertBo);
}

abstract void check(AacmReportInsertBo aacmReportInsertBo) throws IllegalAccessException;
}


class QueryHandler extends CheckableIReportHandler {
@Override
public void handle(AacmReportInsertBo aacmReportInsertBo) {
System.out.println("handle " + aacmReportInsertBo.toString());
}

@Override
void check(AacmReportInsertBo aacmReportInsertBo) throws IllegalAccessException {
Field[] declaredFields = aacmReportInsertBo.getClass().getDeclaredFields();
for (Field declaredField : declaredFields) {
declaredField.setAccessible(true);
NotNull annotation = declaredField.getAnnotation(NotNull.class);
if (annotation != null) {
Class<?>[] groups = annotation.groups();

boolean flag = false;
for (Class<?> group : groups) {
if (group == this.getClass()) {
flag = true;
}
}

if(flag) {
if (declaredField.get(aacmReportInsertBo) == null) {
throw new IllegalArgumentException(declaredField.getName() + " is null");
}
}
}
}
}
}

public void save(AacmReportInsertBo aacmReportInsertBo) throws IllegalAccessException {
IReportHandler handler = ReportHandlerFactory.getReportHandlerService(ReportType.getType(aacmReportInsertBo.getType()));
// ReportHandlerErrorEnum.HANDLER_NULL_ERROR.isNull(handler);
if(handler instanceof CheckableIReportHandler) {
((CheckableIReportHandler)handler).handleWithCheck(aacmReportInsertBo);
}

}
太厉害啦
241 天前
回复了 lurui45 创建的主题 生活 关于日常药店买药的一些想法
在上海路边小药店感冒,随随便要一百多
241 天前
回复了 zhuoyue100 创建的主题 Vue.js 新手 vue3 样式问题
用 tailwind 不考虑这些问题了 😃
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1229 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 14ms · UTC 17:58 · PVG 01:58 · LAX 09:58 · JFK 12:58
Developed with CodeLauncher
♥ Do have faith in what you're doing.