自己编写的struts2+spring+springJdbc框架---设计思路
bcm3721
2009-02-23
=============================== 框架 ================================== ◆技术框架 目标: 搭建 Struts2+Spring+SpringJDBC 框架 任务: 一、规范 1.命名规则: 模块: 维护 mai,审核 aud,查询 sea; 类: action\MaiXXXAction,service\MaiXXXService 2.路径规则: 类: org.bcm.子系统.模组.模块.action\service\view\config\exception 二、参考 1.appfuse 2.springside V1,V2,V3 3.http://www.iteye.com/topic/47085 一种快速开发的Java Web架构设计和实现 4.Rapid-framework 三、搭底层技术框架(封装struts2/spring、提供基础类) -----------OK 1.应用struts2实现以下功能: URL直接映射到 Action的method;----实现mapper ----? 根据请求数据自动封装MapBean; ----实现interceptor ---OK 根据返回的jsp路径进行转发 ----实现result ---OK 2.应用spring实现以下功能: ----OK 数据源 初始化DataBase元数据 3.应用spring JDBC 实现持久化操作 BaseDao ----基本sql操作 ----OK PoDao ----持久化po ----OK sqlbuilder --- 把po转化为sql(参考ddlutils) -----OK sqlmap ---sql外部资源化,放入xml ----?? 提供一个门面类,统一所有操作 ----OK 4.基础类: (参考springside\appfuse\rapid) ----OK org.bcm.base.action.BaseAction org.bcm.base.service.BaseService org.bcm.base.dao.BaseDao org.bcm.base.exception.BaseException org.bcm.base.bean.MapBean org.bcm.base.dao.BasePo 四、技术组件 1.tree树形 xtree xloadtree extree 2.tab标签 ----OK jquery tab 3.grid列表 ----OK ecside 4.表单绑定 -----OK jodd form 5.表单校验 ----OK validation with Prototype 6.装饰器sitemesh ----OK 7.提供公共技术组件 (1).公共筛选 jar包 service中SQL操作 页面(tab标签、列表、图片) (2).批次维护 五、功能点改进 1.管理资源文件 ,各种常量、通用信息 :Constants 类 ----OK 2.异常框架 ----OK 美化、完善错误页面 六、后期考虑 1.把sql从代码清除掉,放入SQL资源文件 2.模版:FreeMarker ----暂不考虑 3.缓存框架:数据层缓存 4.js基库 5.js高精度计算库 6.页面显示格式化(标签/js) 7.防止重复提交 8.Assert 使用Spring的Assert类,将对函数输入参数进行各种形式的校验 9.日志 10.事务处理包含select语句 dao层提供方法,由程序员手动控制事务,例如:提供如下两个方法: startTransaction();开始事务 commitTransaction();提交事务 处于这两个方法中间的数据库操作则自动处于同一事务中. (注意其中的风险,程序员可能没有提交事务,导致资源挂起) 11.美化、完善错误页面 12.数据库端分页 ◆业务框架 1.权限管理 维护用户 维护角色 维护功能模块 要求: 组织机构、用户、角色、模块(应用、子系统、模组、模块、功能) 权限系统: 维护主体(角色、用户、组织机构)、 维护客体(功能、资源)、 分配权限、 校验权限、 获取权限、 提供公共方法 任务:搭基本业务框架 权限管理:用户、角色(角色赋权)、模块重构(应用、子系统、模组、模块、功能); 安全管理:校验权限、获取权限 3.安全框架:后台验证每个操作的权限 2.平台platform function: System,SubSystem,ModuleGroup,Module,function actor: User,Role authority: FunctionAuthority 3.登录 认证 授权 4.工作台 管理内存、session(应用、子系统、模组、模块) 方案1:编写类SessionManager,调用方式 setAttribute(key,value,scope),其中scope取值request、module、modulegroup、subsystem、system; 方案2:编写类Module、ModuleGroup、SubSystem、System 。继承自HashMap 5.组织机构管理 维护机构 维护人员 6.业务流程管理 业务单据 业务流程模版 业务流程实例 自定义审批流程 7.基础数据管理 数据字典 系统参数 8.系统监控 性能监控 在线用户 日志 记录当前登录人信息 9.提供公共业务组件 模块配置组件 权限 业务流程定义 10.FAQ常见问题 提供实施 或 客户 录入问题处理经验 ===================================================== 项目首页: http://code.google.com/p/bcm-myframework/ |
|
njyu
2009-03-02
看完了 留个言!
|
|
yangbo1992
2012-06-14
楼主,求grid部分和菜单部分。邮箱343567562@qq.com或者yangbo343567562@sina.cn
|