1 / 68
合同管理系统
技术方案
版本 <1.0>
2 / 68
文档信息及版本历史
文档信息
项目名称 合同管理系统
项目编号
文档名称 合同管理系统_技术方案.doc
存储位置
版本 作者/修改者 日期 描述
3 / 68
版权信息
4 / 68
【目录】
1概述
12
1.1编写目的
12
1.2适用范围
12
1.3读者对象
12
1.4术语和缩写
12
1.5参考资料
12
2设计概述
13
2.1设计约束
13
2.2设计策略
5 / 68
14
2.3技术实现
14
2.3.1J2EE开发框架
14
3系统概述
17
1.1用户现状
17
1.2业务需求分析
19
4系统总体结构
21
4.1功能模块图
21
4.2系统架构图
21
5功能描述
22
6 / 68
1.1合同管理
22
1.1.1我的合同
22
1.1.2合同起草
22
1.1.3合同签署及用印
30
1.1.4合同履行
30
1.1.5合同归档
30
1.2合同提醒
31
1.3项目管理
33
1.3.1项目基本信息管理
33
1.3.2项目附件管理
7 / 68
35
1.4产品管理
35
1.4.1产品管理
35
1.5合同转移
36
1.5.1转移申请
36
1.5.2转移复核
36
1.5.3转出记录
36
1.5.4转入记录
36
1.6范本管理
37
1.6.1范本类型管理
37
8 / 68
1.6.2范本模版管理
37
1.7合同台账
38
1.8相对方管理
40
1.9档案管理
41
1.9.1待复核
41
1.9.2合同档案
41
1.10制度及公告
43
1.10.1规章制度及公告发布
43
6接口设计
43
7运行环境
9 / 68
43
7.1软件平台
43
7.2硬件清单
43
7.3软件清单
44
7.4数据容量估算
45
7.5网络带宽估算
45
8编码规范
46
8.1代码组织与风格
46
8.1.1源代码文件约束
46
8.1.2源代码目录
46
10 / 68
8.1.3源代码包结构组织
46
8.1.4类结构
47
8.1.5命名
53
8.2代码优化
55
8.2.1代码优化原则
55
8.2.2代码优化实践
56
8.3SQL优化
61
8.3.1提高查询效率原则
61
8.3.2SQL语句优化注意事项
66
8.3.3SQL语句查询案例
11 / 68
67
9系统备份设计
错误!未定义书签。
12 / 68
1 概述
1.1 编写目的
本文档为合同管理系统的概要设计文档,概要描述此项目的
整体轮廓和各个模块的基本功能,使得用户对系统有一个整体的
了解和基本认识,应作为设计人员,开发人员,测试人员和维护
人员以的参考依据,并能给用户提供使用说明。
1.2 适用范围
本文档适用于项目生命周期的各个阶段,为设计人员、开发
人员、和测试人员能提供开发和测试的参考依据,维护人员对项
目进行了修改后,应该相应的修改本文档。
1.3 读者对象
参与项目的客户,设计人员、开发人员、测试人员、以及维
护人员等等都是本文档的读者对象;此文档定义了系统的基本功
能,以及系统架构,系统流程等等。
1.4 术语和缩写
术语和缩写 解释 备注
1.5 参考资料
参考文件 备注
《合同管理系统_需求规格说明书》
13 / 68
2 设计概述
2.1 设计约束
1)
本项目为标准Web应用,能在各种服务器中运行
(比如WebSphere、Tomcat等等)
2)
连接数据库采用数据库连接池的方式,建议用
JNDI,连接数据库为Oracle 11g版本(理论上支持各种
主流数据库)
3)
禁止本地IO操作,如果有IO操作,比如上传文
件上传到远程FTP服务器上;本应用最后运行在集群和
门户上,要求能适应集群和门户环境的要求。
4)
本应用要求要有较高的稳定性,要求能够全天候
运行;本应用要有较高的安全性,没有经过认证的用户
无法访问本系统。
5)
本应用权限配置要灵活,没有权限的用户无法访
问系统内没有授权的模块,并且左边的菜单能根据权限
的不同而发生变化;本应用要求连接用数据库连接池,
最好使用WAS的数据源;
14 / 68
6)
本系统面向企业的所有员工开发,因此,要求易
用性强,人机交互界面友好。
7)
本应用要求有较高的效率,要求绝大多数响应速
度在500ms以内。
2.2 设计策略
系统权限要做到灵活,最好能够配置化,能方便的加入管理
人员并授予角色,角色与菜单/模块的访问权(权限)能无缝连
接起来,比如菜单能根据用户的权限的不同而不同。
要求所有的持久层能够业务逻辑层能够复用,各个层次指职
责分清楚,严格避免层次结构不清的现象,比如在Action或者
View对数据库操作。
2.3 技术实现
2.3.1 J2EE开发框架
本建设方案将采用J2EE框架来进行开发完成。
J2EE是一种利用Java 2平台来简化诸多与多级企业解决方
案的开发、部署和管理相关的复杂问题的体系结构。J2EE技术
的基础就是核心Java平台或Java 2平台的标准版,J2EE不仅
巩固了标准版中的许多优点,例如“编写一次、到处运行”的特
性、方便存取数据库的JDBC API、CORBA技术以及能够在Internet
15 / 68
应用中保护数据的安全模式等等,同时还提供了对 EJB
(Enterprise JavaBeans)、Java Servlets API、JSP(Java Server
Pages)以及XML技术的全面支持。
J2EE提供了一整套核心企业应用程序编程界面,而所有这
些界面均为标准的模块化组件。J2EE技术还为这些组件提供一
整套企业服务,通过自动化的方式完成应用程序开发中的诸多耗
时且费力的艰难工作,为用户提供一种可创建广泛兼容的企业解
决方案而无需进行复杂编程的平台。利用这一优势可以方便地开
发出高质量的、适合企业使用的应用程序,还可极大地减少产品
研发上市时间、成本和风险。
J2EE使用了EJB Server作为商业组件的部署环境,在EJB
Server中提供了分布式计算环境中组件需要的所有服务,例如
组件生命周期的管理、数据库连接的管理、分布式事务的支持、
组件的命名服务等等。有些企业级的EJB Server,例如Sybase
公司的EAS 3.6(Enterprise Application Server 3.6)还提
供了支持高可用性和高性能的群集技术、失败的自动转移和恢
复、应用负载的自动均衡能力等。实现商业逻辑的EJB组件可以
更加高效地运行在应用服务器中,支持多种客户端的访问,HTTP
的客户端可以先向运行在Web Server上的Java Servlet或者