欢迎来到天天文库
浏览记录
ID:14890744
大小:656.50 KB
页数:24页
时间:2018-07-30
《jfinal技术架构浅析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Jfinal技术架构第-5-页JFinal技术架构浅析版本历史版本/状态作者参与者起止日期备注V1.0张剑峰2013-02-16初稿Jfinal技术架构第-5-页Jfinal技术架构第-5-页目录JFINAL11总体架构61.1空间架构61.2逻辑架构61.2.1Http61.2.2Filter61.2.3Handler61.2.4Action61.2.5Model71.2.6Render71.3代码架构81.3.1包结构81.3.2包简介81.4运作原理92核心代码简介92.1JFinalFilter92.1.1init(初始化)92.1.2d
2、estory(销毁)92.1.3doFilter(拦截)92.2JFinalConfig92.2.1Config102.3JFinal102.4Action102.4.1ActionMapping102.4.2ActionInvocation102.4.3ActionKey102.5Handler102.5.1ActionHandler102.5.2HandlerFactory102.6Render102.6.1RenderFactory10Jfinal技术架构第-5-页2.7Iplugin112.7.1C3p0Plugin、DruidPlugi
3、n112.7.2EhCachePlugin112.7.3ActiveRecordPlugin112.7.4SpringPlugin112.7.5QuartzPlugin、Cron4jPlugin122.7.6ConfigPlugin122.8Routes122.8.1MyRoutesUtil122.9Controller122.10Interceptor122.10.1Before122.10.2Tx122.11Validator122.12IServer122.12.1JettyServer122.13MultipartRequest123详细
4、介绍133.1初始化133.1.1控制器的初始化133.1.2Model初始化133.1.3自动初始化实体的实现153.2Jdbc是如何与连接池插件集成的153.3声明式事务是如何实现的153.4DB+ActiveRecord163.5表单数据自动绑定是怎么实现的163.6关于路由173.6.1ioc173.6.2如何去除路由配置173.6.3自动绑定controller的实现173.7拦截器183.7.1全局拦截器183.7.2类拦截器19Jfinal技术架构第-5-页3.7.3方法拦截器193.8插件机制203.8.1插件的注册203.8.2
5、插件运行203.8.3插件停止213.9缓存213.9.1EcachePlugin213.9.2MemcachedClient214如何使用214.1拦截器214.2控制器214.2.1调用controller的方法214.3数据库操作224.4参数获取224.5如何实现事务224.6如何实现文件上传225后续扩展改进235.1懒加载235.2带参数方法的支持235.3如何实现多数据源235.4集群与负载均衡235.5前端的技术选型235.6Webservice支持24新点BizFocus业务中间件-基础开发平台第-24-页1总体架构1.1空间架
6、构框架采用微内核全方位扩展架构,全方位是指其扩展方式在空间上的表现形式。整个空间架构由Handler、Interceptor、Controller、Render、Plugin五大部分组成。每个部分都是基于接口实现的,支持完整的自定义,使用灵活,扩展性强。空间架构图HandlerInterceptorPluginRenderController1.2逻辑架构框架的逻辑架构非常简单,就是一个经典的MVC模式演化、大致分成以下6个步骤:新点BizFocus业务中间件-基础开发平台第-24-页1.1.1Http包括HttpServletRequest、H
7、ttpServletResponse,即客户端请求与响应1.1.2Filter所有请求的拦截器,相当于是一个闸口1.1.3Handler请求处理器,是对所有请求的公共处理,在这里我们可以做权限控制、安全验证等。它是一个责任链模式变种,由初始配置的Handler以及框架默认的ActionHandler构成一个链条,依次执行。1.1.4Action动作处理器,它是一个AOP+Command模式变种。由ActionInvocation进行调度,先执行拦截器,最后执行具体方法。1.1.5Model模型层。在这个层面包括实体模型的定义、DB+ActiveR
8、ecord模式数据库操作的支持、从请求中解析出对应参数构造Model实例,可以把它看成是DAO。1.1.6Render渲染层。负责将服务
此文档下载收益归作者所有