精华帖 (1) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间: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/ 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2009-02-24
关注
楼主是一个人做吗 |
|
返回顶楼 | |
发表时间:2009-03-03
呵呵
用了不错的!!! |
|
返回顶楼 | |
发表时间:2009-03-03
又是造轮子的!从技术上看,放弃了很多好的开源组件,改用自写.好像不太明智吧
|
|
返回顶楼 | |
发表时间:2009-03-03
挺好的!能自己动手实现一遍很不错!支持你!
|
|
返回顶楼 | |
发表时间:2009-03-05
好像没有看到项目?
|
|
返回顶楼 | |
发表时间:2009-03-05
提示你的BASEACTION里
/** * Convenience method to get the request * @return current request */ public HttpServletRequest getRequest() { return ServletActionContext.getRequest(); } /** * Convenience method to get the response * @return current response */ public HttpServletResponse getResponse() { return ServletActionContext.getResponse(); } 可以 implements ServletRequestAware, ServletResponseAware 还有点不明白 既然用struts2 你干什么还搞个MapBean? 多强大的ognl 自动封装你不用 你搞个手动的。不理解。 |
|
返回顶楼 | |
发表时间:2009-07-14
最后修改:2009-07-14
包不全 差了几个 另外也没数据备脚本或备份
|
|
返回顶楼 | |
发表时间:2009-07-31
楼主说说你的设计思路吧
|
|
返回顶楼 | |
发表时间:2009-07-31
为了练习,还是说有项目?
难道先确定技术方案,然后分析设计么? 支持自己做东西:) |
|
返回顶楼 | |