Java设计模式与软件设计原则在ORM Bee的应用

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.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值