
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
一行渲染出完整的查询页——条件表单+结果列表+分页+导出。10.8KB的组件是"零代码模式"的唯一入口。这篇拆它怎么消费describe元数据自动生成一切,以及三种开发模式在这里的分界线。
零代码模式下MetaGrid连columns都不传——describe元数据经store.meta到达——
非科班野生程序员,深耕政务信息化20年。表单设计器设计好了,设计结果存哪?运行时怎么还原?这篇拆解设计器的两条出路——存数据库动态渲染,和导出JSP静态加载。两种模式还能互相转换,导出的JSP可以载回设计器继续编辑。
非科班野生程序员,深耕政务信息化20年。政务审批表单有多复杂?请假申请要并排三列,报销审批要有合并单元格的大标题栏,采购审批要嵌套子表——固定行列的低代码方案根本搞不定。这篇拆解基于Dojo的可视化表单设计器怎么实现自由布局。
非科班野生程序员,深耕政务信息化20年,这套自研低代码平台支撑过省级社保、跨省医保结算等核心民生系统。前面的系列文讲了框架层(IOC、AOP、路由、MyBatis),这篇开始拆解平台的上层建筑——低代码引擎。从元数据驱动SQL到可视化表单设计器,五个关键决策,全是政务场景踩坑后的实用解法。作者:许彰午(xuzhangwu)前面的系列文讲了框架底座:自研IOC容器、注解路由、CGLIB代理AOP、M
*** 观察者模式角色枚举*//** 被观察者 / 事件发布方 */SUBJECT("主题"),/** 观察者 / 事件接收方 */OBSERVER("观察者"),/** 事件对象 */EVENT("事件"),/** 事件总线 */EVENT_BUS("事件总线");┌──────────┐ post() ┌──────────┐ 逐个通知 ┌──────────────┐│ 状态变化 │ ───
原因表现解决方案代码未归还连接活跃连接数持续上升事务过长连接占用时间长缩小事务范围慢SQL连接执行慢,排队优化SQL、加索引数据库重启连接全部失效并发突增连接不够用增大连接池、限流连接泄露活跃连接慢慢增加死锁连接互相等待优化锁顺序网络抖动连接假死连接超时检测连接池问题是"隐形杀手"——平时不出问题,一出就是大问题。日志里多次出现的"连接池泄露"、“连接占完”、“连接池故障分析”,每次都是系统快挂了
✅ 数据字典驱动——从自动读取几百张表的结构,不手工改一行DDL✅ 类型映射完备——NUMBER按精度和scale三分支映射,区分INT/DECIMAL/BIGINT✅ 约束自动迁移——主键、非空从数据字典自动生成,不会漏✅ 分步验证——建表→索引→序列→数据→存储过程,每步验证后再进行下一步✅ 可反向操作——同样的逻辑反过来也可以把目标库的表结构导出为Oracle DDL信创迁移最大的工作量不是
首先定义三个注解,用来标注"哪些类需要管理"和"哪些字段需要注入"。@bean—— 标记需要容器管理的类这个注解放到类上,id就是 Bean 的唯一标识。启动时容器会根据这个 id 把实例放到一个 HashMap 里。@property—— 标记需要注入的字段type="ref"表示按引用注入(从容器里找),其他值就是直接赋值。—— 标记路由映射类上的key是路径前缀,方法上的key是具体路径。拼
MyBatis 全量加载 → 50万行×3~5倍内存膨胀 → 堆撑爆文件写入时字符串拼接 → 大量临时对象 → GC风暴。







