业务层 BIZ
spring容器管理
Client -----> Command -----> CommandDispatcher -----> Application Object -->BO---> DAO -----> DB
封装客户端请求
CommandDispatcher是联结表现层和业务层的枢纽。
CommandDispatcher有多种实现,以适应多种需要:
数据访问层 DAL
分库
事物(Global,Local)
创建维护数据库访问对象 DAO
定义Data Object对象
表现层
1)负责和Web界面交互
||
处理Http请求
Webx framework激活特定pipline(定义一系列阀门(Value),顺序或循环的执行阀门)并开始执行
Webx framework作用仅仅是激活pipline
2)通过Web Service和外界应用交互
Service Framework在系统中处于极为重要的地位。
在JavaEE应用的开发中,常常碰到这样的问题:
1.Singleton的问题 —— 我们希望某个对象或服务是随手可得的,而不需要通过参数传递的方式来取得。
例如,我们希望能在任何地方调用mail服务来发送e-mail。
2.Configuration的问题 —— 不止一个地方需要读取配置文件。最好有一种方法可以统一地管理配置文件。
3.Lifecycle的问题 —— 一个功能模块需要在适当的时候被初始化和销毁。
Service Framework正是为了解决上面三个问题而设计的。
Service Framework管理着一系统被称作Service的功能模块。
Service是一个可重用、可扩展的独立模块。
整个系统正是搭建在这一个个相对独立的Service的基础之上。
配置
DataSource
TransactionManager
Service框架
Service接口
turbine
实现权限管理
UserAuth
layout ---> control -->screen
页面标题有layout控制
module.screen templates/screen对应关系
默认大于配置
测试
AbstractTransactionalDataSourceSpringContextTests 整个project测试的时候会将数据库事务回滚
AbstractDependencyInjectionSpringContextTests 数据库事务不回滚
HiveMind VS spring
http://opentech.alibaba-inc.com/community/thread.jspa?messageID=3488&tstart=0#3488