汽车修理管理系统的初步设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

汽车修理管理系统的初步设计
作者:张磊
来源:《职业·中旬》2011年第03期
随着现代社会的高速发展,应用一套安全可靠的汽修管理系统取代人工管理具有重要意义。

相对于人工建档管理和纸张保存的人工管理方式,汽修管理系统必须具有操作简单,易学易用,电脑基础低的特点,才能广泛地使用。

本文尝试用构建一种利用Struts、Spring、Hibernate开发的基于B/S模式的汽修管理系统,实现采购管理,劳资管理和库存管理的结合。

集汽车修理、商品进销存管理(物流、信息流)和财务管理(资金流)的功能于一体,直接帮助使用者全面管账。

一、系统设计
本系统采用B/S模式,基于Struts+Spring+Hibernate框架进行开发,并采用三层体系结构,其中包括:①表示层;②控制层;③数据层。

其中,表示层是汽修管理系统的用户接口部分,是实现用户与应用逻辑处理结果的交互界面,也是用户与Internet之间交互信息的窗口,是由各种浏览器构成。

控制层完成与用户操作有关的所有业务逻辑,Web服务器是该层中的重要组成部分。

它根据客户端的请求启动相应的程序来完成有关的事务处理,并将处理结果以HTML代码的形式发送给客户端浏览器。

本系统采用TOMCAT5.0.28作为Web服务器。

数据层由数据库服务器构成。

它主要提供数据管理,对数据库数据进行读写,能够执行大量的数据更新和检索,完成数据存储。

本系统采用的数据库服务器是SQL Server2000。

系统的模块如如图1所示,系统数据E-R如下页图2所示。

1. 数据库的设计
数据库的设计是关键的一步,它要求降低数据冗余,保证数据完整性及一致性和提高数据并发性能力为原则,只有设计合理才能使查询方便快捷。

2. Struts架构的运用
Struts的主要功能是实现MVC,它的核心是控制器部分的ActionServlet,它通过一个XML配置文件来配置业务流程,因此这个模块用了一个struts-config-storagemanager.Xml来配置业务流程,同时在web.Xml中声明这个配置项。

在struts-config-storagemanager.Xml中,声明每个业务所需要的客户端请求,处理该请求的Action类,收集该次请求数据信息的FormBean类,并说明业务执行完毕后各种结果应该给用户返回的视图。

3. Hibernate的运用
利用Hibernate实现员工对库存商品录入的模型部分,它的属性通过Hibernate 的配置映射文档StorageManager.hbm.Xml映射到关系数据库中。

Hibernate的映射文件说明了一个持续化类与关系数据库表的映射关系,包括属性映射到哪个字段,以及集合属性映射到哪些相关字段。

还要通过映射文件来说明持久化类之间的关系,例如父子关系,一对多和多对一等,而这些关系最终体现着关系型数据库表之间的关联关系。

采用了Hibernate之后,访问数据库操作的SQL语句会大量减少,例如插入数据的操作甚至可以不用SQL语句。

这样使系统不仅开发起来更快,也使系统更容易更新和维护,例如假设StorageManager类多了几个属性我们都可以不用修改业务逻辑,只需要修改映射文件即可。

4. 查询的实现
系统中的查询部分有很大的用处,它可以方便地找到所需要的信息。

以下这个方法可以根据属性名和属性值来进行模糊查询,并返回符合条件的对象列表。

public List findLike(String name, Object obj) {
Criteria criteria=getSession().createCriteria(getEntityClass());
criteria.add(Expression.like(name,"%" + obj + "%"));
return criteria.list();
}
Criteria是Hibernate的一个类,代表一个条件查询。

criteria.add(Expression.like(name,"%" + obj + "%")); 这一句就可以实现根据属性名(name)和属性值(obj)来进行模糊查询。

从这个实例可以看出使用Hibernate来操作数据库是多么的简单。

5. DWR的运用
DWR是一个开源的类库,可以开发包含AJAX技术的网站。

它可以允许在浏览器里的代码使用运行在WEB服务器上的JAVA函数,就像它就在浏览器里一样,由于用户一次选购多件产品,方便用户修改每件新产品的数量,使用DWR实现了此功能,当用户修改好数量后,鼠标离开文本框的时候,不用刷新本页面,产品的数量和总金额会动态刷新,实现如下:
function changePrice(num) {
var id = num.nextSibling.value;
var position = num.nextSibling.nextSibling.value;
ajform.refreshPrice(id,num.value,function(data){
dwr.util.setValue("countMoney", data + "元");
});
}
//-->
当鼠标离开文本框时去调用changePrice这个javascript函数,而ajform.refreshPrice()调用了java中的方法,function(data)表示回调函数,用来更新所选产品的总金额。

6. spring的运用
com/sys/model/Bulletin.hbm.xml
net.sf.hibernate.dialect.MySQLDialect
true
三、总结
为了适应新的发展形势需要,充分利用现有的网络资源,本文设计提出了一种利用Struts、Spring、Hibernate开发的基于B/S模式的汽修管理系统。

系统采用SQL Server 2000数据库、应用服务器采用的是Tomcat5.0.28,以及Struts+Hibernate+Spring集成架构大大提高了开发效率,具备了良好的稳定性、可扩展性、移植性及安全性。

本系统要求企业内部网络化管理,主要实现的功能包括:系统管理、采购管理、库存管理及劳资管理等。

相关文档
最新文档