学号:________________密级:________________武汉大学本科毕业论文SpreadsheetFunctions'DesignAndImplementationInEnterpriseAssetManagement企业资产管理系统中电子报表功能的设计和实现院(系)名称:国际软件学院专业名称:软件工程学生姓名:周叶胜指导教师:王树良BACHELOR'SDEGREETHESISOFWUHANUNIVERSITYSpreadsheetFunctions'DesignAndImplementationInEnterpriseAssetManagementCollege:WuHanUniversitySubject:SoftwareEngineeringName:YeshengZhouDirectedby:ShuliangWangJune2008郑重声明本人呈交的学位论文,是在导师的指导下,经过小组工程实践,进行大量研究所取得的成果,所有数据、图片资料真实可靠。尽我所知,除文中已经注明引用的内容外,本学位论文的研究成果不包含他人享有著作权的内容。对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确的方式标明。本学位论文的知识产权归属于培养单位。本人签名:日期:摘要本论文是基于一个小组完成的企业资产管理系统来撰写,主要讨论了实现这个系统所用到的Struts、Spring、Hibernate技术,它所涉及到的数据库设计。Struts、Spring、Hibernate技术到底是什么,三种技术如何集合在一起,数据库到底应该如何设计等,本文都给出了阐述。本论文的重点是报表系统,也是基于项目所实现的功能来讨论,主要讨论了本人设计报表的理念和实现报表的原理。报表设计和实现,它与业务和用户的关系甚密,完全了解业务才能设计出符合要求的报表系统。关键词:Struts技术;Spring技术;Hibernate技术;SSH框架;数据库;报表:ABSTRACTThispaperiscarriedoutonthebasisoftheEnterpriseAssetManagementsystemwhichisproducedbyourfour-peoplegroup.ThispapermainlyintroducestheStruts,Spring,Hibernateframework.Meanwhile,itgivestheprinceplesabouthowtodesigndatabasebasingonthebusinessyouaretryingtoimplement.Butthepointofthispaperisonthespreadsheet.Howtodesignitandhowtoimplementarethekeysofspreadsheet.Thesekeysshouldbaseontheprogram'susers.Differentcultureordifferenteducationwillaffectyourdesign.Andtheflowofthebusinesswillaffectittoo.Thispapergivedetailsonit.Keywords:Struts;Spring;Hibernate;SSH;database;spreadsheet目录第1章绪论1.1概述………………………………………………………………………71.2项目技术构架……………………………………………………………71.3项目技术构架……………………………………………………………81.4项目功能简介……………………………………………………………81.5论文研究方法……………………………………………………………8第2章技术简介2.1JSP技术简介………………………………………………………………102.2Struts简介…………………………………………………………………112.3Spring简介…………………………………………………………………132.4Hibernate简介……………………………………………………………152.5数据库设计介绍……………………………………………………………192.6框架整合与配置…………………………………………………………20第3章报表设计和实现3.1报表设计……………………………………………………………………223.1.1业务流程……………………………………………………………223.1.2报表与人物角色………………………………………………………243.1.1报表设计………………………………………………………………243.2报表的实现…………………………………………………………………253.2.1报表实现原理…………………………………………………………263.2.2员工购物报表实现……………………………………………………283.2.3经理报表实现…………………………………………………………293.2.4报表页面显示实现……………………………………………………30结论………………………………………………………………………………32致谢………………………………………………………………………………33第1章绪论1.1概述企业资产管理在我国企事业单位的资产管理中是一个薄弱环节,也是一个必须要加强的环节。企业资产的流失、闲置、重复采购及责任的不明确等,都导致了企业资产的严重浪费。为了使企业资产能够充分有效的利用,必须对企业资产进行有效的管理。企业资产管理系统是立足企事业单位后勤发展,集数据集成、电子报表、分类汇总、自动生成、网络传递、多极查询于一体的企业资产管理系统,是与现行住房档案管理信息系统和企业资产上报系统相互支持,配套的智能化技术平台,整体上建成运作简便、管理科学、效率很高、最终能实现无纸化办公品牌服务窗口。系统为集中采购提供了技术手段,从资产采购选型开始,提交采购申报,分配到责任人管理维护维修,最后的报废处理的全过程进行管理。记录资产的各种属性,记录资产的变更、报废的情况,提供个人查询、领导查询等多级查询功能。将资产的登记与财务报账连接、资产与责任人挂钩,并与人事部门连接,实现动态实时的查询功能,防止企业资产的流失和浪费。系统还提供耗材管理功能,供网上耗材申领和核发,统计耗材领用情况。1.2项目技术构架由我们小组完成的这个企业资产管理系统所用的框架是比较流行的SSH框架,Struts+Spring+Hibernate这3个框架,Struts我们用的是1.2版本,Spring是2.0版本,Hibernate是3.2的的版本,而我们的数据库使用的是MySQL5.0版本。使用CMMI软件开发流程,包括需求分析、系统设计、编码实现和测试等。J2EE应用开发技术,应用Java语言、JavaScript、XHTML,Eclipse、Tomcat、SVN、Bugzilla等编程环境和工具;MySQL关系数据库编程。UML建模语言,需求分析和系统设计建模工具,以及有关的软件工程方法;总的来说是一个传统的基于MVC框架模式的WEB项目的开发。1.3企业资产管理系统国内外发展趋势在国内外,企业资产管理系统是一个正在蓬勃发展的新兴企业所必需系统,并且越来越多的受到企业的欢迎和认可。但是,由于还没有健全,就难免会存在一些问题,且不说企业资产管理安全等问题,业务功能的优劣正逐渐成为制约企业资产管理发展的重要因素之一。我国现阶段企业资产管理电子报表存在的几大问题:1.资产目录不详细2.资产管理不充分3.资产流动不灵活4.系统操作不人性化1.4项目功能简介本系统具有的功能1.用户登陆:包括用户的登陆,注册;2.网上超市:包括提供商品的分类浏览、查询及自动生成采购申报表。以及产品信息发布,项目日志管理,产品报价系统;3.资产核查:核查子系统的技术调研工作,及子系统的实现;4.通用及专用设备:将专用及通用设备从购买、维修、处置到最后的报废过程进行管理。5.车辆管理:将车辆从购买、维修、处置到最后的报废过程进行管理;6.耗材管理:用户可通过网上超市提出耗材领用申请,管理员可通过分类统计及查询功能快速的对申请进行审核,可以有效的避免资产浪费。待审核完成后,用户在领用耗材时,管理员便将其详细信息记录入库;7.供应商管理系统:包括集中采购及账务报账;8.系统维护:包括人员信息维护、部门维护、资产编码维护及耗材类别维护。系统的使用者分为员工、总经理、部门经理和系统管理员,不同的企业角色在登陆后所进行的操作和所看到的页面是不一样的1.5论文研究方法独立完成以及参加小组讨论合作。运用所学过的Java知识以及MVC框架的有关技术,先完成自己所负责的电子报表系统模块,然后将小组各成员的成果整合为一个完整的项目。第2章技术简介2.1JSP技术简介网页可以分为动态页面和静态页面。HTML就是用来写静态页面的,在静态页面上,你无法和服务器互动,只能浏览页面信息。动态页面就不一样了,它可以和服务器端进行交互,你所做的事情不仅仅只是浏览信息,比如:搜索、发帖等。JSP技术是比较流行的用于制作动态页面的一门技术,它涉及到servlet和静态页面的编写。首先JSP中有page、request、session、application4个范围的分化,因为动态变化涉及到页面的跳转等,在操作中会有无数的参数、属性的出现,那么在与服务器进行信息交互的过程中,你就需要分清参数、属性到底是在哪个范围里面,并且清楚了解4个范围的分界。在每个范围里面,都会有取得和设定参数或者属性的方法。JAVA中都是对象调用方法,而JSP中有8个内置对象:pageContext、request、session、application、out、config、page、exception。设定属性的方法是:PublicvoidsetAttribute(Stringname,Objectvalue)获取属性的方法是:PublicvoidsetAttribute(Stringname)举个简单的例子,如:request.setAttribute(username,zhou)就是在request范围里面设置一个属性username,它的值是zhourequest.getAttribute(username,zhou)就是获取username这个属性的值request.getParameter(password)就是获取页面中一个参数的值。这样一来,服务器可以获得页面中的任何信息。信息获得后,需要servlet来处理,所以每个功能你都需要写一个相应的servlet来处理,然后将servlet添加到页面中来实现各种功能,比如:跳转页面、根据你的搜索显示结果等等。简单来讲,将servlet和静态页面结合就是动态页面。编写servlet是最主要的,它决定你的功能,而静态页面主要影响视觉效果,也是很重要的。客户所了解的就是能不能用,而第一印象是界面是否符合要求,所以静态页面的设计也很重要。这2个方面都做好了,JSP技术也就基本掌握到了。2.2.Struts简介Struts是一个为开发基于模型(Model)-视图(View)-控制器(Controller)(MVC)模式的应用架构的开源框架,是利用JavaServlet和JSP构建Web应用的一项非常有用的技术。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,因而吸引了众多的开发人员的关注。首先事件是指从客户端页面(浏览器)由用户操作触发的事件,Struts使用Action来接受浏览器表单提交的事件,这里使用了Command模式,每个继承Action的子类都必须实现一个方法execute。struts重要的表单对象ActionForm是一种对象,它代表了一种应用,这个对象中至少包含几个字段,这些字段是Jsp页面表单中的input字段,因为一个表单对应一个事件,所以,当我们需要将事件粒度细化到表单中这些字段时,也就是说,一个