轻量级J2EE基础架构及规范.doc

BI基础架构及规范 1. 前言 3 2. 架构技术简介 3 2.1. 技术架构分析和最佳实践: 3 2.1.1. Hibernate 3 3 2.1.2. Spring 2 3 2.1.3. Spring MVC 3 2.1.4. FreeMarker + EXTJS 4 3. 领域模型设计规范 4 3.1. 概念模型基本的设计和应用 4 3.1.1. 基础类的设计 4 3.1.2. JSONNotAware 4 3.1.3. Modelable 4 3.1.4. BaseObject 4 3.1.5. BaseModel 5 3.1.6. 实体类的设计规范 5 3.2. 实体关系映射配置 6 3.2.1. spring-hibernate-type.xml 6 3.2.2. perties 6 3.2.3. 在spring-hibernate.xml中的Hibernate集成配置 6 3.2.4. Hibernate实体类配置示例 6 3.2.5. 多对一ManyToOne关系的应用 8 3.2.6. 一对多OneToMany关系的应用 9 3.2.7. 多对多ManyToMany关系的应用 10 4. 业务逻辑层详细设计 12 4.1. 工具类的介绍 12 4.1.1. HqlUtils 12 4.1.2. BaseManager 12 4.2. 基于Spring IoC容器的上下依赖设计 12 4.2.1. IoC控制反转设计模式 12 4.2.2. Manager的设计思想 12 4.2.3. Service和Manager上下依赖的两层设计思想 13 4.2.4. 配置文件和例子 13 4.3. 声明式事务配置 14 4.3.1. Spring的声明式事务管理简介 14 4.3.2. 声明式事务的原理 14 4.3.3. 配置文件 15 5. 数据字典解决方案 16 5.1. 需求和应用场景分析 16 5.1.1. 一般枚举显示 16 5.1.2. 下拉框 17 6. 异常处理 18 6.1. 异常处理的分析 18 6.1.1. Spring中几个非常有用的工具类 18 6.1.2. 受控异常和非受控异常 18 6.1.3. 传统异常控制策略的弊端分析 19 6.2. 异常处理的设计和应用 19 6.2.1. 处理来自于JDK和第三方包的异常 19 6.2.2. 利用非受控异常实现部分业务逻辑 19 7. 版本控制和维护策略 21 前言 请先根据各自所在的项目获取最新的样例代码,本文接下来的很多例子都是根据样例代码来讲解的。 架构技术简介 技术架构分析和最佳实践: Hibernate 3 详细的Hibernate的使用技巧请参考夏昕的《深入浅出Hibernate》,不过此书凡是和公司的框架和规范有冲突的章节和内容,以公司的为准。 采用自上而下的编程实践。 第一步:使用PowerDesigner.12.1设计数据库,然后生成对应领域的Java文件。 第二步:第一步中生成的Java文件要经过修改,然后用ant生成*.hbm.xml配置文件并刷新src目录,参考本文中的“领域模型设计规范”和《birt.2.2.0.使用说明》。 Spring 2 提供强大的Bean容器和声明式事务管理,经过极其精减的配置优化。 Spring MVC 经过极其精减的配置优化。 FreeMarker + EXTJS Ajax客户端。 缓存策略 本框架使用的缓存主要是EHCache,有部分是OSCache,EHCache可在net/gbicc/x27/conf/x27-ehcache中进行配置,主要是设置缓存对象的个数上限,主要的配置要素是时间控制,时间配置根据不同的模块都在相应的模块中进行配置。时间配置都是指过期时间,而不是idle时间配置,例如如果设置了5秒钟的缓存,一旦5秒钟时间后缓存的对象都过期。 但是需要注意的是,缓存过期以后并不会主动的触发数据库查询,缓存过期策略的实现的一般方法是需要数据时先去缓存中找,如果缓存中没有或者缓存中的数据过期,测试再通过数据库查找数据,同时把相应的数据放入缓存,并设定过期时间。 凡是和业务逻辑不是密切相关的且需要大量读取的数据都可以考虑放在缓存中,通过设置一定的过期时间,即使时间不长也不要紧,在系统并发量小的时候本来系统压力就不大,每次查询缓存都过期导致都查找数据库也没有关系,系统压力不大,但是一旦有了缓存,在系统包并发的情况下,系统表现出来的性能下降曲线能够大大改善。 数据持久化层设计规范 概念模型基本的设计和应用 基础类的设计 如上图,有4个接口和两个抽象类,都在net.gbicc.x27.util.hibernate包下,只有JSONNotAware例外,在net.gbicc.x27.util

文档评论(0)

1亿VIP精品文档

相关文档