Bee源码分析:Bee使用的设计模式与设计原则
创建型模式(5种):工厂方法模式、抽象工厂模式、单列模式、建造者模式、原型模式。
结构型模式(7种):适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
行为模式(11种):策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
原型模式
缓存,获取拦截器链
工厂方法模式
HoneyFactory
抽象工厂模式
GenIdFactory
享元模式
SQL关键字
适配器模式
适配JPA部分接口
代理模式
Tran注解
责任链
拦截器链,按串接的顺序处理定义好的动作
解释器模式
后端自动解析前端的查询请求
装饰器模式
Sharding分片:排序装饰器,分页装饰器
模板方法模式
Sharding分片,各分片操作流程一样,只是具体的分片操作不一样。
分片流程:
设置下标
设置数据源名称,
分片操作 //这一步具体操作不一样, 一般使用抽象方法
清除数据源名称
清除下标
源码:
public abstract class ShardingTemplate<T> {
int index;
String ds;
public abstract T shardingWork();
public T doSharding() {
HoneyContext.setSqlIndexLocal(index);
HoneyContext.setAppointDS(ds);
T rs = shardingWork();
HoneyContext.removeAppointDS();
HoneyContext.removeSqlIndexLocal();
return rs;
}
}
开闭原则
开闭原则指的是对扩展开放,对修改关闭。在对程序进行扩展的时候,不能去修改原有的代码.
Bee理论上支持所有支持JDBC的数据库;
但每个数据库的类型或多或少都会有一些自己的特征,要增加支持一种DB,不需要修改Bee框架的代码,
(若有必要)只需要增加配置文件:jdbcTypeToFieldType-{DbName}.properties.
这正是开闭原则的体现。
Bee,互联网新时代的Java ORM框架,支持Sharding;JDBC,Android,HarmonyOS;更快、更简单、更自动,开发速度快,运行快,更智能!
https://github.com/automvc/bee
Bee is an AI, easy and high efficiency ORM framework,support JDBC,Sharding,Android,HarmonyOS.

548

被折叠的 条评论
为什么被折叠?



