代码拉取完成,页面将自动刷新
基于springboot、mybatis-plus封装的JavaWeb快速开发框架
传统三层架构代码是面试过程编程,DDD领域驱动则是面向对象编程。领域驱动的明显特征就是高内聚、低耦合。领域驱动的有点明显同时缺点也明显: 缺乏统一的标准,实施难度大。
这个框架就是为了方便实现易于维护,可重用性好,易拓展的,高内聚低耦合的代码。统一范式的开发, 设计(领域层)与实现分层(应用层),面向指令编程。可根据实体对象一键生成基础代码,根据指令实体自动生成接口文档。
/**
* 创建字典
*
* @author system
* @tags 系统管理/字典
* @Date: 2023-11-25 15:46
*/
@Data
@EqualsAndHashCode(callSuper = true)
@DomainCommand(path = "/sys/dict/create", desc = "创建字典", needLog = true)
public class DictCreate extends DomainCmd<Boolean> {
/**
* id
*/
private Long id;
/**
* 字典名称
*/
private String name;
/**
* 编码
*/
private String code;
/**
* 描述
*/
private String remark;
/**
* 字典项
*/
private List<DictItem> items;
}
/**
* 字典指令处理器
*
* @Author: system
* @Date: 2023-11-25 15:46
*/
@HandlerComponent
public class DictCmdHandler extends BaseCmdHandler<DictPersistService, DictConverter, DictEntity,
DictCreate, DictUpdate, DictDelete, DictQuery, DictQueryResp> {
}
/**
* 操作日志处理
*
* @author might
*/
@Component
@RequiredArgsConstructor
public class SysOperateLogHandler implements OperateLogHandler {
private final Ip2regionSearcher regionSearcher;
@Override
public void saveLog(OperateLogModel operateLogModel) {
String clientIP = HttpContextHolder.getClientIP();
// 保存日志
OptLogCreate optLogCreate = new OptLogCreate();
optLogCreate.setTitle(operateLogModel.getTitle());
optLogCreate.setTraceId(operateLogModel.getTraceId());
optLogCreate.setIpAddr(clientIP);
optLogCreate.setIpPlace(regionSearcher.getAddress(clientIP));
optLogCreate.setUrl(HttpContextHolder.getHttpRequestWrapper().getRequestURL().toString());
optLogCreate.setRemark(operateLogModel.getRemark());
optLogCreate.setUserId(Long.valueOf(operateLogModel.getUserId()));
optLogCreate.setUsername(operateLogModel.getUsername());
optLogCreate.setDataLog(operateLogModel.getChangeData());
optLogCreate.setCreateTime(new Date(operateLogModel.getOptTime()));
optLogCreate.execute();
}
}
以前的话还要注如service,再去调用。现在面向对象,更简单,可读性更高了
optLogCreate.execute() 即完成调用(依赖反转,指令会匹配到应用层中的handler方法,调用指令的处理逻辑)
项目 | 描述 | gitee 地址 |
---|---|---|
might-module-sys | might-admin后端代码 | https://gitee.com/mightlin/might-module-sys |
might-admin-web | might-admin前端代码 | https://gitee.com/mightlin/might-admin-web |
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。