`
jiangshaolin
  • 浏览: 58150 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

BLH结构分析

 
阅读更多
BLH结构

入参:RequestEvent
出参:ResponseEvent
业务接受者:FacadeGateWayService
业务处理类:***BLH extends BaseBizLogicHandler
业务处理代理类:BizDelegate

职责:
RequestEvent:构造函数(BLH名,方法名),可设置请求来源(渠道类型),用户ID,事务类型,地区代码,

BizDelegate:将RequestEvent发送至FacadeGateWayService(可配置为本地或远程的FacadeGateWayService)
在这里记录日志(比如耗时,等),统一异常、错误码的处理

FacadeGateWayService:需注入dbsessionFactory,事务处理,异常记录,调用BaseBizLogicHandler.execute(RequestEvent req, CTPDBSession ss)处理RequestEvent

BaseBizLogicHandler:统一处理验证(意义不大);运用spring代理技术,记录每个dao方法的访问时间

***BLH:业务处理类的每个方法,作为一个业务单元,处理RequestEvent

***DAO:数据库操作;


优点:降低了controller到biz层耦合;测试简单;能够监控系统的性能;追踪用户访问时系统的性能瓶颈;学习成本低,使用简单,上手速度快;
在系统逐步扩张为多种接入渠道(如:手机、web、终端等)时很适用;
在controller到biz层的业务参数经常变化或需统一调控的情况下很适用。
业务模块独立性强的情况下适用;
适用于垂直业务开发;

缺点:设计理念导致blh复用不理想;blh调blh会出现事务不一致问题;反射的性能问题;开发效率不高;blh重构不方便;多数据源支持不是很方便。


改进建议:blh、dao做成单例加缓存解决性能问题,使用ThreadLocal解决事务问题,适当的情况下增加配置式的sql或者增加mybatis的支持。
分享到:
评论

相关推荐

    BLH2KML_.zip_界面编程_Visual_C++_

    标题中的“BLH2KML_.zip_界面编程_Visual_C++_”表明这是一个使用Visual C++进行界面编程的项目,目标是将GPGGA数据转换为KML(Keyhole Markup Language)格式。KML是一种用于存储地理定位信息的XML方言,常用于...

    XYZ2ENU坐标转换批处理

    这可能来自于文本文件、CSV格式或其他数据存储结构。 2. **计算转换参数**:根据给定的参考点(通常是ENU坐标系的原点),计算出XYZ到ENU的转换矩阵。这包括计算参考点的XYZ坐标,并确定从XYZ到ENU的旋转角度(通常...

    七参数法坐标转换在EXCEL VBA中的实现

    例如,"BLH_XYZ"函数可能用于将大地坐标(经度、纬度、高程)转换为笛卡尔坐标(X、Y、Z),而"XYZ_BLH"则执行相反的操作。在进行这些操作时,可能会用到一些特定的数值(如椭球体的长半轴和扁率),文章中提到了...

    科傻GPS数据处理软件说明书

    7. **网图显绘**:能够直观地显示测量网络的结构,帮助用户更好地理解和分析数据。 8. **报表输出**:提供原始数据报表和平差结果报表等多种报表输出方式,方便用户进行数据分析和报告撰写。 #### 四、应用案例 - ...

    不锈钢静载称重模块,全球前3强生产商排名及市场份额调研数据.pdf

    - **市场领导者**:Mettler Toledo、HBM、BLH Nobel (VPG) 和 Siemens 等企业在不锈钢静载称重模块市场上占据主导地位。2022年的数据显示,全球前三大生产商合计占据了约25.0%的市场份额。 - **市场竞争格局**:尽管...

Global site tag (gtag.js) - Google Analytics