# account **Repository Path**: lvsmart/account ## Basic Information - **Project Name**: account - **Description**: ooad的项目 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2014-01-12 - **Last Updated**: 2020-12-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README IT资产管理系统说明文档 ------------ - [乐亦聪][1] 10302010031 - [吕祥钊][2] 10302010047 项目托管在[oschina][3] 1. 构架 ----- 在业务层实现逻辑,在数据层实现数据操作和维护,在其间进行对接,将测试框架紧密结合在该系统上,就是整个项目的基本构架。 业务层实现封闭,并且提供统一的操作接口,以供调用;数据层使用Hibernate封装,实际操作数据库的行为经封装,提供统一的接口以供调用。这是项目实现的基本思路。 2. 数据框架 ------- 对数据库使用了Hibernate进行管理,在数据库中实际存在五个表结构,分别是 - company:代表公司相关数据 - staff:代表员工相关数据 - account:代表归属,公司或者员工相关数据 - equipment:代表设备相关数据 - event:代表事件相关数据 3. 业务层到数据层的映射关系 --------------- 实现相关接口后,可以调用Hibernate相关功能对数据库进行管理,在相应的设置文件中设置好映射关系后,可以在原代码结构中只做简单的修改(利用注解)即可实现映射关系。 4. 业务逻辑 ------- 业务逻辑的框架由下列三个接口中的方法进行刻画,并且在相应的类中进行实现: - ICompanyService - IStaffService - IEquipmentService 三个接口分别针对公司、员工、设备的相应操作和状态变更进行规范和设定。 业务逻辑层只暴露出这三个接口,其他细节对外封闭,降低了层与层之间的耦合度。 5. 测试框架 ------- 项目使用JUnit进行测试,核心测试类针对业务逻辑层的接口实现的方法进行了测试。分别是: - src-test/serviceTest/CompanyServiceTest - src-test/serviceTest/EquipmentServiceTest - src-test/serviceTest/StaffServiceTest 分别对 - 公司相关操作方法 - 查看公司当前保有设备列表进行查询; - 设备相关操作方法 - 设备的购入、借用、归还和报废操作 - 设备的相关事件查询, - 就一些错误的业务逻辑例子进行了测试 - 错误的参数; - 员工相关操作方法 - 查看该员工当前保有公司设备列表进行查询。 6. 代码组织框架 --------- 代码是以eclipse项目结构为标准的,在 - lib 文件夹内,包含了Hibernate,Spring,JUnit, JDBC相关的包 - src 文件夹内,包含了数据层和业务逻辑层相关的类实现 - common 文件夹内,包含了Hibernate,Spring,JUnit等的基本映射,为ORmaping的操作做准备 - entity 文件夹内,包含了所有的数据模型,与上层业务逻辑和底层的数据库操作,均无关系 - service 文件夹内,包含了所有的业务逻辑,操作entity里面的model来分别实现不同的功能 - src-test 文件夹内,包含了针对src文件夹中主要的功能类与相关接口编写的JUnit测试代码 - account 文件夹内,只是对于entity的简单测试 - service 文件夹内,是对于业务逻辑的测试,采用了JUint测试驱动的开发方式 - src-config 文件夹内,包含了Hibernate等相关组件的设置文档,用以记录层间映射等相关信息 - uml 文件夹内,包含了UML建模相关的文件 [1]: http://git.oschina.net/sagnitude [2]: http://git.oschina.net/lvsmart [3]: http://git.oschina.net/lvsmart/account.git