的企业资产管理系统网上采购模块的设计与实现样本_第1页
的企业资产管理系统网上采购模块的设计与实现样本_第2页
的企业资产管理系统网上采购模块的设计与实现样本_第3页
的企业资产管理系统网上采购模块的设计与实现样本_第4页
的企业资产管理系统网上采购模块的设计与实现样本_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

J2EE公司资产管理系统网上采购模块设计与实现摘要随着经济一体化进程加快与互联网信息技术飞速发展,公司信息化步伐也逐渐加快,从普通手工操作到办公自动化套件广泛应用,再到各式各样公司管理平台大量实行,以及将来向一体化方向进展,国内公司信息化经历了一种技术化层面从低到高,集成化限度从分散到集中,管理理念不断更新,管理方式逐渐走向成熟过程。期问涌现出许多先进管理平台,资产管理系统(EAM)就是其中比较有影响力一款。EAM系统下采购管理作为供应链管理一种重要环节,日渐显示出其重要性。要想在信息化浪潮中提高公司竞争力,建立一套适合公司发展资产管理系统势在必行,而其中网上采购模块是其中一种重要角色。本系统基于B/S模式,采用应用广泛J2EE开发平台、设计与实现了EAM资产管理系统,满足了公司管理信息化需求。系统分为四个模块:网上采购、资产核查、资产申请申报、系统管理。其中网上采购管理模块目录管理、信息发布、报价系统构成。本文环绕设计与实现EAM采购管理系统,一方面对采购管理系统流程进行了详细分析,以及各个模块与网上采购系统关系,明确了需求:然后依照采购管理系统需求分析,设计了采购管理系统总体与详细架构,并在此基本上设计了相应数据库;最后展示了采购管理系统运营效果。核心词:J2EE,EAM,Struts,MVC,采购管理系统,ABSTRACTWiththerapiddevelopmentoftheeconomicglobalizationandinformationtechnologysuchastheInternet,computertechnologyandnetworktechnology,companiesacceleratethepaceofinformationization.Fromusualmanualtoextensiveuseofofficeautomationsoftware,tothekindsofvariousenterprisemanagementplatform’Simplementationandfuture’Sdirectionoftheintegrationprogress.ourcountry’Sinformationizationofcompanyintechnologylevelfromlowtohigh,thedegreeofintegrationfromdecentralizedtocentralized,developmanagementtheoriesandmanagementmodemovetomaturity.Duringtheemergenceofmanyexcellentsystem,EAMisoneofthemoreinfluential.EAMprocurementmanagementasanimportantpartofsupplychainmanagement,itisincreasinglyimportant.Inordertoimprovingthecompetitiveofenterprise,establishingprocurementmanagementsystemwhichadapttoenterpriseisimperative.ThispaperbasesonB/Ssystem,adoptJ2EEdevelopmentplatform,designandimplementallEAMprocurementmanagementsystem,achievetheenterpriseprocurementmanagementinformationrequirements.TheEAMprocurementmanagementsysteminvolvefoursub-modulesrelated,suchasprocurementmodule,materialscheckmodule,purchaseordermodule,systemmanagemodule.Andtheprocurementmoduledividedinto3specificmodules.ThepaperfocusesonCataloguemanageModule,InformationModule,PriceReportingModule.Then,withtherequirementsofEAMprocurementmanagementsystem,wedeterminethearchitectureofthesystem,functionaldesigning,andschemeoutthedatabases.Atlast,thepaperdemonstratestheruntimeeffectivenessofsomemodules,concludesthecharacteristicsandlimitationsofthesystem,andpointsouttheprospectoffuturework.KeyWords:J2EE,EAM,Struts,MVC,ProcurementManagementSystem第1章引言1.1选题目和意义公司从采购、生产、销售到全面预算,处在一种迅速变化且难于预测买方市场,为了提高竞争力,需要采用更加先进制造技术与管理办法,做出迅速响应。而实现按期交货,满足客户需求,第一种环节就是采购。因而,采购作为公司运作核心环节,其地位举足轻重。采购工作为了公司生产与管理,以及时、按质与按量规定供应所需物资,以最小物资储备达到最佳供货状态。避免物资积压与缺料对于一种公司来说至关重要。因而,有必要创立可以集成在EAM采购管理系统,以适应电子商务时代公司发展需要。该采购管理系统是EAM系统中物流、生产流、资金流中物流与资金流重要构成某些,在保障信息在不同部门之间正常流动,准时交货与减少成本起着重要作用。本EAM系统面向中小型制造公司、合用于多行业、可依照详细业务需求进行功能裁减并支持公司业务流程重组。并在广州、珠三角乃至全国制造公司中推广应用,逐渐实现产业化。机械制造业重要通过对原材料加工,改造与组装成为市场合需要产品。重要涉及机械加工、机床加工与组装性行业。其中涉及工业领域重要有机械设备、汽车、造船、飞行器、机车与日用器具等等。1.2公司资产管理系统发展状况 工业发展经历了从手工作坊到机械化、自动化再到集成化变迁,因而各个时期检修方式也随之不断更新和发展。从总体上看,可分为如下几种阶段:第一阶段:事后维修和防止性维修(从18世纪第一次产业革命到20世纪初)。事后维修是指当设备发生故障时进行非筹划性维修,防止性维修即实行定期点检及初期维护。第二阶段:经济检修(从20世纪初至80年代),随着科学技术发展,检修方式也变各种各样,于是就产生了以节约成本为宗旨综合检修方式。即将各利一检修方式依照需要,有机地结合在一起检修方式。其明显特点是设备现代化、管理当代化。第三阶段:状态和预知维修(从20世纪80年代至今)。依托盟测设备,对设备运营状态进行监控,然后做出维修决策。通过这种方式,可以大大减轻专业维修人员工作量,不但如此,运营人员也可以通过监测设备参加检修,及时调节设备运营状态,以维护设备正常高效运转。纵观设备维修发展史,咱们可以发现,每一中设备维修办法诞生,都是随着着科学技术进步应运而生。在科学技术低下初期,由于没有先进设备管理系统,设备维修只能依托事后维修方式进行;随着科学技术发展,首先浮现是低层次设备管理系统,只能对设备进行简朴管理,因此可以制定出一定维修筹划和设备维修周期,进行防止性维护;到了设备维修第三个阶段,恰逢信息技术飞速发展时代,先进管理系统,就可以使经济维修成为也许;到了今天,随着其她技术,例如监测技术飞速发展,使得系统可以实时监控设备运营状态,这就可以依照设备实时状态进行防止性维修。正是基于当今设备维修发展需要,一套先进,融合最新技术设备管理平台就显得尤为重要,而公司资产管理系统(EAM)就是在这个背景下诞生。EAM前身是CMMS(ComputerizedMaintenanceManagementSystem:计算机化设备维护管理系统)。CMMS更多侧重维修管理,涉及防止性、预测性维修筹划,从系统应用范畴来看,CMMS更多停留在部门级水平。EAM系统已经在管理广度和深度上提高到整个公司级,甚至是多公司管理,EAM系统支持多组织管理。在这样管理模式下,充分保存了各分公司自身管理特点,并在需要时互相以便地互换信息和共享流程。这样EAM系统将协助管理决策层以便、及时、完整顿解下属公司运营状况,特别是可以直接在系统中直接对下属企业、部门、系统或其混合模式进行预算控制,以此协助跨国公司、集团公司全局掌控和管理资产,最大限度减少管理成本,实现公司价值最大化。IT技术应用同步,EAM协助公司把实现公司设备资产管理战略目的变得更加灵活和简朴。随着计算机、数据库,特别是Internet广泛应用,EAM系统也从过去CMMS可以单机安装发展到今天网络化运营。任何地点、任何时间,顾客只需要运用原则Internet浏览器即可登录系统,获取实时管理信息。这样运作方式同步减少了公司对于IT设施投资,以及维护成本。全球EAM软件及服务市场规模早在已超过13亿美金,将达到19亿美金。而对于国内EAM市场窄间,各家公司对于详细数字说法不一,而一致看法是EAM增长速度是公司信息产品中发展最快。1.3论文研究内容本文对EAM采购管理系统各个模块进行了需求分析,在需求分析基本上,设计了系统架构,并实现了EAM采购管理模块,满足了公司采购信息化需求。本文重要工作有:1.对采购管理系统进行了需求分析。一方面,分析了采购管理总体业务流程与采购管理在整个EAM系统中地位;然后,将网上超市管理、资产申请、资金申请功能,详细分析,明确需求。2.设计了系统总体架构。总体架构分为视图层、代理层、控制层、模型层与DAO层,设计了系统总体业务流程和各层解决逻辑。3.设计了系统详细架构。一方面设计了详细架构通信图与数据流;然后分别设计了前台与后台逻辑解决系列图。4.设计了相应系统数据库。5.对系统模块中类与接口、页面进行设计与编码。1.4论文构造本文分为6章 第1章,绪论。简要论述了项目背景与开发采购管理系统意义,引出了本文重要工作。第2章,系统平台与技术。简朴阐明了本文涉及核心技术J2EE、MVC和SSH框架技术。第3章,网上采购模块需求分析。一方面分析了采购管理总体目的,然后详细分析了采购管理涉及各个模块流程与功能,明确了需求。第4章,网上采购模块设计与实现。一方面设计了系统总体架构与原理,然后设计了系统详细架构设计与数据库,最后详细阐明系统模块重要类与页面设计。以及阐明了系统开发与运营环境,并直观呈现系统某些模块运营效果。第5章,总结与展望。对总结了本文、分析了项目特点与优势、指明了未来工作切入点。第2章系统平台与技术2.1MVC设计模式2.1.1MVC模式简介随着Web开发不断发展和需要,MVC模式被推荐并成为Sun公司J2EE平台设计模式,并且在应用中受到越来越多开发者欢迎。Model-View-Controller本来是XeroxPARC在八十年代为编程语Smalltalk-80创造一种应用程序框架构造,至今已被广泛使用。该框架构造支持三层构造类:体现应用程序状态层、屏幕体现层和控制流层,因而这三层被称为模式(Model)、视图(View)和控制器(Controller)。MVC是可以满足那些需要为同样数据提供各种视图应用程序开发需要,在开发与顾客接口有关,特别是对顾客接口规定较复杂有关应用程序时,可以较好地以不同方式来显示同一数据,也就是在不变化软件功能前提下,可以实现顾客对顾客接口个性化规定,而MVC模式最大特点就是将业务层与表达层分离,并且提供了诸多使显示接口更加个性化卷标库,因此它能更好地实现顾客接口各种个性化需求。MVC通惯用于分布式应用系统设计和分析,如:大型商业网站、公司信息系统、管理信息系统、决策支持系统等,但它自身并不局限于某一种特定领域。MVC设计模式,近来几年被推荐为SIJN公司JZEE平台设计模式,它强制性地把应用程序输入、解决和输出分开[3]。它三个核心部件分别是模型、视图和控制器,它们各自解决各自任务:(1)模型(业务逻辑层):表达公司数据和业务规则,实现详细业务逻辑、状态管理功能。在MVC三个部件中,模型拥有最多解决任务。例如它也许用像EJB和ColdFusionCompanies这样构件对象来解决数据库。被模型返回数据都是中立,也就是说模型和数据格式无关,这样一种模型能为各种视图提供数据。由于应用于模型代码只需写一次就可以被各种视图重用,因此减少了代码重复性。(2)视图(表达层):即顾客看到并与之交互接口,是应用程序外在体现,普通实现数据输入和输出功能。对老式Web应用程序来说,视图就是由HTML元素构成接口,在新式Web应用程序中,HTML仍旧在视图中扮演着重要角色,但某些新技术也层出不穷,它们涉及MacromediaFlash和像XHTML、XML/XSL、WML等某些标记语言和WebServices。因而如何解决应用程序接口变得越来越有挑战性。MVC一种大好处是它能为你应用程序解决诸多不同视图。在视图中其实没有真正解决发生,不论这些数据是联机存储还是一种雇员列表,作为视图来讲,它只是作为一种输出数据并容许顾客操纵方式。(3)控制器(控制层):起到控制整个业务流程作用,依照顾客输入调用相应模型和视图去完毕顾客需求和有关操作。详细地来说:控制器自身不输出任何东西和做出任何解决。它只是接受客户祈求并进一步决定调用哪个模型去解决该祈求,并依照解决成果来拟定用哪个视图来显示模型解决之后返回数据。它们三者之间关系如图3.1所示。 图2.1MVC组件类型关系和功能2.2Struts项目概述 Struts是Apache组织一种项目,像其他Apache组织项目同样,它也是一种开源专案。Struts作为一种设想是CraigRMcClanahan于提出,该设计目的是为运用Java技术开发基于MVC模式Web应用提供一种原则模式。基于Struts架构Web应用程序基本上符合JSPModel2设计原则,是MVC设计模式一种变形,提供了对开发MVC系统底层支持,它采用重要技术是Servlet、JSP和CustomTagLibrary[5]。Struts框架是一种基于Java技术,Web应用程序开发人员通过Struts框架即可充分运用面向对象设计,代码重用及“编写一次,处处运营”长处。此外,Struts不但是拥有自己控制器,同步整合了其他某些技术来实现模型层和视图层,例如:在模型层,它可以很容易与数据库访问技术相组合,涉及JDBC技术和EJB技术;在视图层,它可以与JSP、XSL等组件相结合[6]。因此从一定意义上讲,采用Struts来实现基于MVCWeb应用开发,可以依照详细需求来选取设计复杂限度,具备较好扩展性。Struts重要优势功能如下: (1)Struts中包括一种控制器Servlet,用来控制顾客祈求发送到相应Action对象;(2)在JSP页面中可以选用自定义标签库,并且在控制器Servlet中提供关联支持,这样可以协助开发人员以便快捷地创立交互式窗体应用;(3)Struts还提供了一系列实用对象:XML文献解决、通过JavaReflectionAPI自动解决JavaBean属性、国际化提示和消息。2.2.1Struts核心组件Struts是一组互相协作类、Servlet和JSP标记,它们构成了一种可重用MVC设计模式。这个定义表达Struts是一种框架,而不是一种库,但同步Struts也包括了丰富标记库和独立于该框架工作实用程序类库。Struts通过某些组件类来完毕框架功能,这些组件涉及:ActionServlet、Action、ActionForm、ActionForward、ActionMapping。1.ActionServletActionServlet继承自javax.servlet.http.HttpServlet类,它在struts中扮演角色是中心控制器。它提供了一种中心位置来重要负责将Http客户祈求组装后,依照配备文献指定描述,转发到恰当解决器。此外,除了作为应用程序前端控制器外,ActionServlet实例还负责初始化和清除应用程序资源。2.Action一种Action类角色,就像是客户祈求动作和业务逻辑解决之间适配器,它作为应用程序响应顾客祈求动作,将祈求与业务逻辑分开。这样顾客祈求和Action类之间可以有各种点对点映射。Action最为惯用办法是execute(),典型Action类普通要在execute()办法中实现下列逻辑:(l)检查顾客session当前状态。如果session过期或者顾客没有登录,要将表达层页面跳转到顾客登录页面;(2)检查顾客输入合法性。调用FormBean实例validate()办法检查某些字段输入值与否恰当或合法;(3)执行业务操作。调用业务逻辑Bean相应办法执行顾客业务祈求;(4)更新服务器端对象。将Model状态变化告知给View,并返回祈求页面。 3.ActionForm一种应用系统消息转移(或者说状态转移)非持久性数据存储,普通由ActionFormBean来负责,它重要功能是为Action操作提供与客户窗体相映像数据。对于每一种客户祈求,普通要经历如下几种环节:(l)检查Action映像,拟定配备文献中己经配备了对ActionForm映像;(2)依照Name属性查找ActionForm信息;(3)查找ActionForm使用范畴,拟定在此范畴下与否存在相应FormBean实例;(4)如果在当前范畴内,相应FormBean实例己经存在,并且对当前祈求来说是同一类型话,就可以重用,否则,就要重新构建一种FormBean实例;(5)调用FormBeanreset()办法;(6)调用相应set()办法,对状态属性赋值;(7)如果validated属性值被设立为true,则调用FormBeanvalidate()办法;(8)如果validate()办法没有返回错误,控制器将ActionForm作为参数,传给Action实例execute()办法执行。4.ActionForward当Action实例execute()办法运营完毕后,控制器依照Mapping可以将响应信息转到恰本地方,ActionForward重要功能就是对将要转向视图地址一种封装。转向各种属性也可以在配备文献中设立性,这样就大大提高了软件复用性和可维护性。5.ActionMappingActionMapping以Java形式封装了如何将一种祈求URL映射到与其相应Action某些信息。ActionMapping对象协助进行框架内部流程控制,它们可以将祈求URL映像到Action类,并且将Action类与ActionFormBean有关联。Struts框架控制器ActionServlet在内部使用这些映射将控制转移到特定Action类实例。2.2.2Struts工作流程采用Struts框架开发Web应用系统时,在Web应用启动时就会自动地加载并初始化ActionServlet,此时ActionServlet将会从Struts-config.xml文献读取配备信息,并把它们存储到各种相应配备对象中。当ActionServlet接受到一种客户祈求时,将执行如下流程:(l)检索与顾客祈求匹配Action实例,如果不存在,控制器直接将祈求转发给JSP或静态页面;如果有相应Action,并且这个Action有一种相应FormBean,ActionForm被实例化并用Http祈求数据来填充其属性,然后保存在ServletCotenxt中,以备其他Action对象或JSP调用。(2)控制器依照Struts-config.xml配备信息将祈求切换到详细Action,相应有关FormBean信息也一起发送给Action类execute()办法。(3)Actionexecute()办法返回一种ActionForward对象,控制器ActionServlet再通过该ActionForward对象来进行转发工作。(4)Action依照业务解决不同成果返回一种相应目的响应对象给总控制器,这个目的响应对象可以相应一种详细JSP页面或者是此外一种Action。(5)总控制器ActionServlet依照业务功能Action返回目的响应对象(多数状况下,该响应目的是一种JSP页面),将Http祈求转换到该目的响应对象中,进一步将成果页面呈现给顾客。2.2.3Struts框架实现MVC模型Struts实质上就是JSPModel2基本上实现一种MVC模式框架,MVC设计模式为构建可扩展、可重用体系构造打下了较好基本,该设计模式需要顾客将自己代码抽象出来,把项目在一定限度上分解为表达,逻辑和控制三某些,每某些之间关系相对较小,以便使得软件构造更加灵活,并具备较好可重用性和可扩展性。在Struts框架中,模型普通有实现业务逻辑JavaBean或EJB组件构成,控制器由ActionServlet和Action来实现,视图由一组JSP檔构成,Struts实现MVC框架如图3.4所示。 图2.2Struts实现MVC模型Struts是Apache组织一种项目,提供了一种实现MVC架构高度自动化方式,作为一种MVC框架,Struts对Model、View和Controller都提供了相应实现组件:(l)控制器(Controller):控制器作用是从客户端接受祈求,并且选取执行相应业务逻辑,然后把响应成果送回到客户端。在Struts中Controller功能由ActionServlet和ActionMapping对象构成。ActionServlet是MVC设计模式决策控制某些,也是Struts框架核心。它依照ActionMapping把Http消息形式顾客祈求转换成相应应用程序动作。ActionServlet还负责用相应祈求参数填充ActionForm(普通称之为FormBean),并将其传给相应动作类(普通称之为ActionBean)。动作类Action来实现核心商业逻辑,它可以访问JavaBean或调用EJB,最后动作类指向相应JSP檔,最后身成有关视图。ActionServlet涉及一组基于配备ActionMapping对象,每个ActionMapping对象实现了一种祈求到一种详细Model某些中Action解决器对象类之间点到点映像。ActionMapping中有Action对象名字和地址描述,当有祈求传入Controller时,它把祈求途径映像到Action地址,并把祈求传给那个Action类。ActionMapping类也涉及某些程序中也许唯一信息,例如本地变量,特定环境数据,或者URL。(2)模型(Model):表达应用程序状态和业务逻辑[9]。MVC系统中Model某些从概念上可以分为两类:系统内部状态和变化系统状态动作。Struts为Model某些提供了Action和ActionForm对象,所有Action解决器对象都是程序开发者从StrutsAction类派生子类,并对其中重要办法进行覆盖。Action解决器对象封装了详细业务解决逻辑,解决详细业务逻辑操作,并且把响应提交到适当View组件以产生响应。Struts提供ActionForm组件对象,可以通过定义属性描述客户端窗体数据。咱们可以从它派生子类对象,运用它可以实现对客户端窗体数据良好封装和支持,相应Action解决器对象可以直接对它窗体数据进行读写,而不再需要和Request、Response对象进行数据交互,通过ActionForm组件对象实现了对View和Model之间非持久性数据交互支持。(3)视图(View):视图是顾客看到并与之交互界面。Struts应用中View某些是通过JSP技术实现。Struts提供了自定义标签库,通过使用这些卷标定义JSP窗体可以和Model某些中ActionForm映像,完毕对顾客数据有关封装,同步还可以使用这些标签来丰富JSP页面。2.3数据持久技术与Hibernate 在采用了Struts技术框架中,Struts简化了Web层开发,实现了应用程序显示逻辑和业务逻辑分离,使应用程序更趋模块化,应用程序更加容易维护。这种应用程序基本架构是MVC(Struts)+DAO(DataAccessObject)+JDBC+Databases。为了进一步地提高代码可复用性和可维护性,提高开发效率,需要一种更加有效架构。由于大多数应用程序都涉及到数据库操作,普通数据库表会诸多并且关系复杂,如果使用DAO+JDBC访问数据库将会使得编程过程复杂化,进而带来是大量维护工作,特别是层与层之间耦合性大,表格属性变动将极大影响代码维护,因而需要有一种以便通用方案来解决这个问题。这里将采用对象/关系映像(Object/RelationalMapping)数据持久化技术来简化编程复杂度,当前实现对象关系映像也已有某些比较成熟工具,如Caster,JDOGenie,Hibernate等。本文重要应用Hibernate:在Struts中,不需要太多代码,它可以将对象映像到关系数据库中行,不需要编写复杂SQL语句,开发架构也就变成Struts+DAO+Hibernate+Database,毫无疑问使用Hibemate实现持久层是一种有效选取,它可以大大减少操作数据库工作量,并且使得系统更加易于维护。2.3.1Hibernate概述和特点1.Hibernate概述Hibernate是一种较好ORM(Object/RelationalMapping)映射工具,支持使用各种Java思想如:inheritance,association,composition,collections等实现对象。它可以直接映像大某些JavaBean而不需要做任何修改,虽然修改最多也就是在相应Bean里面加上某些私有访问办法;可以将一种顾客定义各种实例映像到一张表同一行;还可以用代理模式简化加载类过程[14]。对于使用JDBC和SQL手工操作数据库来说,使用Hibernate,可以大大减少操作数据库工作量。因而使用它,既可以用来在Java应用程序中取代大某些JDBC代码,也可以很以便地整合到系统中作为持久层框架。Hibernate使用数据库和配备文献数据来给应用程序提供相应持久化服务和持久化对象PO(PersistentObjects)。通过简朴地设立配备文献hibernate.xml和创立每个数据库表xml映像文献,可以省去大量复杂JDBC编程,Hibernate可以支持17种数据库,同步它也支持连接池应用。2.Hibernate特点(1)Hibernate是JDBC轻量级对象封装,它是一种独立对象持久层框架。Hibernate特点重要是简朴、易用、强大、灵活并且速度够快。Hibernate可以代替JDBC编程应用场合,例如Java应用程序中访问数据库某些代码,DAO模型中接入数据库时访问代码,甚至可以是BMP里面访问数据库代码。此外,Hibernate拥有自己功能强大查询语言(HQL),HQL与SQL非常相似,HQL基于SQL,但它提供了更加面向对象封装。(2)Hibernate不同于EntityBean。EntityBean由容器解决大某些资料完整性、资源管理和并发性功能,因而开发人员只需要关注业务逻辑和数据解决。从软件整体框架来看,Hibernate不能用于完全代替EntityBean。Hibernate和EntityBean都为程序员实现了透明持久性,并且程序员都不需要关怀太多技术细节[15]。Hibernate此外也为咱们提供了更灵活事务管理机制,Hibernate使用Session来管理事务,而EntityBean则将事务管理委派给了EJB容器。Hibernate虽然具备自己事务管理,但是事实上它事务管理是对JDBCTransaction封装,或者是对JTATransaction封装,也就是上面提到,Hibernate是对JDBC轻量级对象封装。值得注意是Hibernate事务管理更加灵活,它可以在JDBCTransaction和JTATransaction之间进行选取,默认状况下将使用JDBCTransaction。(3)Hibernate是一种和JDBC密切关联框架,Hibernate兼容性只与JDBC驱动和数据库关于系,而与Java程序或者APPServer没有任何关系。(4)灵活对象-系映像办法,可以实现各种不同类型映射,并且Hibernate具备简朴易于操作API接口和丰富资源配备文文献,这些都使得应用程序开发更加简朴和快捷。3.Hibernate持久化框架作用在软件开发过程中引入成熟持久化实现框架,大大提高了数据库访问层开发效率,详细体当前如下几种方面:(l)可以减少乏味代码编写。Hibernate持久层框架封装了数据持久层诸多有关技术细节,例如事物管理、数据库连接管理、SQL语句生成等,使得开发人员可以避免重复JDBC编程,将精力投入到业务逻辑详细实现中去。(2)更加面向对象设计。Hibernate持久层框架是建立在面向对象设计思想之上,而ORM(ObjectRelationalMapping)是Hibernate持久层框架基本特性,也是Hibernate实现面向对象设计核心技术。ORM为系统面向对象设计实现提供了更加自然实现方式,可以通过ORM将系统中DomainObjects自动映像到各个数据库表,从而在编码过程中只需运用面向对象办法来解决Objects有关属性,而不必对JDBCResultSets中字段进行分别解决。(3)可以保证更好性能。Hibernate持久层框架提供了先进性能优化机制,如内置数据库连接池支持、PrepareStatement缓存、数据缓存等。这些对于上层架构完全透明优化机制综合使用大大提高了系统性能。(4)更好可移植性。基于Java跨平台特性,开发软件系统可以在不同操作系统之间切换,但由于数据库之间差别,系统在数据库平台之间移植并不太容易实现。而Hibernate持久层框架由于其设计上良好隔离,提供了对不同数据库良好支持,只需简朴地修改其配备文献中数据库属性参数,即可实现底层数据库切换,更好地提高了系统可移植性,也更好地保护了己有人力和资源投入。2.4Spring框架应用 Spring是一种开源框架,它由RodJohnson创立。它是为理解决公司应用开发复杂性而创立。Spring使用基本JavaBean来完毕此前只也许由EJB完毕事情。然而,Spring用途不但限于服务器端开发。从简朴性、可测试性和松耦合角度而言,任何Java应用都可以从Spring中受益。老式J2EE应用开发效率低,应用服务器厂商对各种技术支持并没有真正统一,导致J2EE应用没有真正实现WriteOnce及RunAnywhere承诺。Spring作为开源中间件,独立于各种应用服务器,甚至不必应用服务器支持,也能提供应用服务器功能,如声明式事务等。Spring致力于J2EE应用各层解决方案,而不是仅仅专注于某一层方案[16]。可以说Spring是公司应用开发“一站式”选取,并贯穿体现层、业务层及持久层。然而,Spring并不想取代那些已有框架,而与它们无缝地整合。简朴来说,Spring是一种一种轻量级控制反转(IoC)和面向切面(AOP)容器框架:(1)轻量:大小与开销两方面而言Spring都是轻量。完整Spring框架可以在一种大小只有1MB多JAR檔里发布。并且Spring所需解决开销也是微局限性道。此外,Spring是非侵入式:典型地,Spring应用中对象不依赖于Spring特定类。(2)控制反转:Spring通过一种称作控制反转(IoC)技术增进了松耦合。当应用了IoC,一种对象依赖其他对象会通过被动方式传递进来,而不是这个对象自己创立或者查找依赖对象。你可以以为IoC与JNDI相反——像从容器中查找依赖,而是容器在对象初始化时不等对象祈求就积极将依赖传递给它。(3)面向切面:Spring提供了面向切面编程丰富支持,容许通过度离应用业务逻辑与系统级服务(例如审计(auditing)和事务管理)进行内聚性开发。应用对象只实现它们应当做——完毕业务逻辑——仅此而已。它们并不负责(甚至是意识)其他系统级关注点,例如日记或事务支持。(4)容器:Spring包括并管理应用对象配备和生命周期,在这个意义上它是一种容器,你可以配备你每个bean如何被创立——基于一种可配备原型(prototype),你bean可以创立一种单独实例或者每次需要时都生成一种新实例——以及它们是如何互有关联[17]。然而,Spring不应当被混同于老式重量级EJB容器,它们经常是庞大与笨重,难以使用。(5)框架:Spring可以将简朴组件配备、组合成为复杂应用。在Spring中,应用对象被声明式地组合,典型地是在一种XML檔里。Spring也提供了诸多基本功能(事务管理、持久化框架集成等等)。所有Spring这些特性使编程更干净、更可管理、并且更易于测试代码。它们也为Spring中各种模块提供了基本支持。

第3章网上采购模块需求分析3.1采购业务程分析整个资产管理系统模块构造如图3-1所示。图3.1资产管理系统模块构造图网上采购功能支持从筹划、订单、收货、收票,到结算全过程管理。实现采购系统物流、资金流、信息流统一。通过采购过程中价格管理及事后成本分析,达到稳定产品质量,减少采购成本目。对采购业务中帐务解决提供支持。采购管理模块与资产核查、资产申报、等模块形成良好接口。采购管理系统涉及到模块如图3.2所示。图3.2采购管理系统构造采购管理全流程涉及员工、部门经理、财务经理、采购员等角色。各个角色互相协作,共同完毕采购管理这一流程,如图3.3所示。图3.3采购管理流程3.2采购业务流程详细分析采购模块包具有有3个重要功能:网上超市管理,采购申请,资金管理。3.2.1网上超市管理需求分析涉及目录管理、信息发布和报价系统。目录管理提供界面以便顾客浏览商品,以购物车方式选用商品,顾客可随时查看自己所选取商品。在超市中选完商品后,可自动生成并保存物资采购申报表,并可依照资金状况决定与否能打印输出。报价系统在员工选取商品时,会实时显示所选商品合计金额、已申报金额及预计剩余金额。3.2.2采购申请需求分析员工在提交了采购订单之后,交由项目经理进行审批,如果通过,项目经理便通过核查进一步提交采购申请。若经理不能通过审批则可修改订单后再提出申请。图3.4申购资产流程图3.2.3资金管理需求分析部门经理提出采购申请之后,有财务部门经理进行审查图3.5资金管理流程图第4章网上采购模块功能分析与设计 本章重要简介资产管理系统采购模块,以及采用MVC设计模式体系构造,这里以该子系统中账户管理模块设计为例阐明整个设计开发过程,其他模块设计思想相似。4.1总体设计 此系统技术架构设计是基于J2EE架构思想与MVC模式以及实现这种模式Struts技术。系统总体技术架构如图4.1所示。图4.1系统总体构架按照MVC设计模式把系统划分为模型,控制与视图三个基本层次,其思想重要是用面向对象设计办法将顾客界面与业务逻辑隔离。由模型层(Model,执行祈求操作),视图层(View,显示应用状态),控制器层(Controller,解决顾客输入,设备与程序间交互)三某些构成。Model负责数据解决,实现特定业务功能。涉及应用数据获取,数据解决,事务解决,状态变更。因而,它包括了老式三层构造“数据层”所有与“逻辑层”某些功能。Controller决定应用行为。接受顾客输入,依照输入选取特定Model,选取输出所用View。View按特定方式显示“业务逻辑模式”数据。普通是积极直接从Model获取数据;也容许接受Model数据变化时发送告知,更新显示。对于Web应用开发模型,相对于老式三层构造,MVC更符合面向对象设计思想。各种视图使用同一种模型。模型与视图分开使各种视图可以使用相似公司模型。因而,公司应用程序模型组件就更容易实现,测试与维护,由于所有对模型访问都要通过这些组件。对客户机新类型更容易支持。要支持客户机新类型,只需为其编写一种视图与控制器,然后在已有公司模型中将它们连起来。视图层使用开源软件Struts作为前端控制器,控制JSP页面之间信息传递与流转。视图层使用远程服务Proxy来调用后端构件服务。Struts包括三个重要元素。ActionServlet充当前端控制器角色,负责接受顾客界面(如:JSP/Html/Xml等)发出Http祈求,并调配服务器端资源,解决顾客祈求并向顾客回送成果页面。ActionForm从Http祈求中提取业务数据,并转换成ValueObjeet,同步还负责业务数据验证,修剪等工作。Action是解决顾客祈求单元。ActionScrvlet依照配备参数选取相应服务处理单元。Controller使用SessionBean与MessageBean作为服务入口,分别提供同步会话与异步会话两种构件协作方式,并提供事务管理,异常解决等必要功能。控制层设计巾使用了责任链模式,通过责任链把语法检查,语义分析与匹配等一系列功能作为可选服务,如图4.2所示。图4.2控制层解决流程图按照顾客配备,逐个挂到责任链上,只有通过了责任链上所有服务检查点核算,消息事件才干到达目构件。否则,会生成一种失败异常返回给顾客分析。Model负责表述业务逻辑与数据,具备两个子层:数据访问层与业务逻辑层.数据访问层,负责把外部数据(数据库,XML文献,数据文献等)映射成为内存中对象VO(ValueObject,值对象),它提供了透明数据访问服务。由于存储在外部数据源业务数据普通都非常庞大,并且外部存储器访问速度比内存访问速度要慢许多,普通慢l至4个数量级,需要耗费较多系统时间,因而数据访问构件层必要拥有良好执行效率。业务逻辑层,通过数据访问层获得所需要业务数据,并提供对业务数据解决,其作用类似于“数据过滤器"。业务逻辑构件表达了公司业务逻辑,一般需要提供参数化配备办法,便于适应业务逻辑经常性变动。4.2数据库设计资产管理系统中关于采购模块数据库表设计如下 表4.1公司已有设备表(device)字段名类型备注SourcenameVarchar设备名称SourceIDVarchar设备ID,主键,自增deviceMountInt设备数量unUsedMountInt未用数量usingMountInt在用数量scrappedInt报废数量表4.2申报设备表(declareddevice)字段名类型备注sourceNameVarchar设备名称sourceIDVarchar设备ID,主键deviceMountInt设备数量costInt耗费表4.3角色表(role)字段名类型备注RoleIDVarchar角色ID,主键,自增RoleVarchar角色名称表4.4角色权限表(roleAuthority)字段名类型备注chartIDIntIDroleIDVarchar角色IDauthorityIDVarchar权限ID表4.5权限表(authority)字段名类型备注AuthorityIDVarchar权限ID,主键AuthorityNameVarchar权限表4.6订单表(order)字段名类型备注orderIDVarchar申报表IDorderTestVarchar申报资产costInt耗费orderTimeDate申报时间userIDVarchar申报人PMPassedInt项目经理通过否accounterPassedInt会计通过否claimedInt认领否claimAtDate认领时间表4.7申请表(aaply)字段名类型备注appIDIntIDappTexttext申请资产名称appAtDate申请时间UserIDVarchar申请人PMPassedInt项目经理通过否claimedInt认领否表4.8状态表(status)字段名类型备注statusIDInt状态IDstatusNameVarchar通过,未通过,未解决表4.9资金表(fund)字段名类型备注fundIDInt资金ID curFundInt流动资产capFundInt固定资产fundAtDate时间表4.10设备超市表(devicemarket)字段名类型备注deviceIDInt主键,自动递增,非空。deviceNameVarchar设备名costInt耗费InternalDependencyDescription内部依赖性描述 图4.3内部依赖性描述4.3重要用例实现与页面4.4.1类设计资产管理系统中采购模块类设计。1.Apply用来建立Apply这张表实体模型。如图图4.4apply类2.ApplyDao是用来封装某些对Apply这张表操作。图4.5ApplyDAO类3.Devicemarket是用来建立对DeviceMarket这张表实体模型。图4.6Devicemarket类4.Device是用来建立Device这张表实体模型。图4.7Device类5.DeviceDAO封装某些对Device这张表操作。图4.8DeviceDAO类6.DevicemarketDao封装某些对Devicemarket这张表操作。图4.9DevicemarketDao类7.Makeorder用来判读页面跳转。图4.10Makeorder类8.Makeapply用来判读页面跳转。图4.11Makeapply类9.Marketmanage用来判读页面跳转。图4.12Marketmanage类10.Order用来封装对Order这张表操作。图4.13Order类11.OrderDAO是用来建立Order这张表实体模型。图4.14OrderDAO类12.Staffform用来保存staff表单。图4.15Staffform类13.User建立User这张表实体模型。图4.16User类14.Userdao封装对User表操作。图4.17Userdao类15.Userdaoimpl是Userdao实现类。图4.18Userdaoimpl类4.4.2采购模块页面实现1超市管理页面具备发布信息,目录管理功能并能做出相应修改图4.19超市管理页面2申购订单页面具备提交订单功能 图4.20申购订单页面 3部门经理审批页面审批由员工提交采购订单。 图4.21部门经理审批页面4财务经理审批页面审评由部门经理提出采购申请。图4.22财务经理审批页面

第5章总结与展望5.1由EAM引起对B/S模式思考EAM系统平台发展也历经了软件开发模式从c/s模式向B/S模式转变,国外普通称“B/S”为“Web应用”。是随着Internet技术兴起,对c/s模式应用扩展。在这种构造下,顾客工作界面是通过IE浏览器来实现。B/S模式最大好处是运营维护比较简便,能实现不同人员,从不同地点,以不同接入方式(例如LAN,WAN,Internet/Intranet等)访问和操作共同数据,缺陷就是对网络性能好坏依赖性过大。但随着网络传播能力和质量逐渐完善,B/S逐渐呈现出了它强大生命力。GoogleWEBOFFICE浮现更进一步展示了B/S无限生命力,开创了任何应用系统都可以通过B/S模式实现新时代。使用GoogleWEBOFFICE,可以在任何一台电脑上,只要装有浏览器,就可以进行和普通OFFICE同样工作,编制文档、制作演示文稿、绘制表格等等。GoogleWEBOFFICE界面使用GoogleWEBOFFICE另一种优势为,它可以在线存储所编制文档,不用紧张自己存储器损坏而导致文献丢失等等意外状况。这也是Google进行云计算尝试开端。关于云计算,Amazon、Google、IBM、微软和Yahoo等大公司都是云计算先行者。这里“云”是某些可以自我维护和管理虚拟计算资源,普通为某些大型服务器集群,涉及计算服务器、存储服务器、宽带资’源等等。云计算将所有计算资源集中起来,并由软件实现自动管理,无需人为参加。这使得应用提供者无需为繁琐细节而烦恼,可以更加专注于自己业务,有助于创新和减少成本。从上述描述来看,咱们可以总结出云计算几种特点:(1)云计算提供了最可靠、最安全数据存储中心,顾客不用再紧张数据丢失、病毒入侵等麻烦。云计算使得每台计算机都拥有最先进解决器和存储器,由于都是通过云来帮她们解决,固然顾客也无需紧张病毒干扰了。(2)云计算对顾客端设备规定最低,使用起来也最以便。曾有人说,将来计算机也许就想当前电视机同样,自身只是一种浏览器,拥有即点即开功能,不用再为开机而挥霍好多时间。将来计算机将更轻便,更小巧,更智能。(3)云计算可以轻松实现不同设备间数据与应用共享。云计算使得个人手持设备实现真正随时随处功能,无论你身处何方,只要通过互联网,就可以查询所有你自己文档资料,实现真正数据与应用共享。(4)云计算为咱们使用网络提供了几乎无限多也许。云计算浮现才真正体系了互联网价值。互联网精神实质是自由、平等和分享。作为一种最能体现互联网精神计算模型,云计算必将在不远将来展示出强大生命力,并将从各种方面变化咱们工作和生活。无论是普通网络用户,还是公司员工,无论是IT管理者,还是软件开发人员,她们都能亲身体验到这种变化。5.2由EAM系统实行引起对中华人民共和国软件业展望随着国内信息化产业蓬勃发展,国内软件产业也飞速增长。特别是进入21世纪以来,国内经济和产业构造进一步调节,以及世界信息产业飞速发展,政府在这一时期内扶持力度大大加强,使中华人民共和国软件业步入一种迅速增长期。国家工信部数据显示,国内软件服务业收入7573亿元,是12.7倍,软件出口142亿美元,是35倍。全行业从业人数超180万人,销售收入过亿元软件公司达到了984家。预测到,国内软件业收入将首次突破万亿元,在GDP比例将达到2%。但由于国内软件产业发展过程中某些自身因素,导致国内软件实行过程方中还存在某些不尽如人意地方。例如:(1)过程管理方面国内软件产业始终受“个人英雄主义”影响,存在许多包打天下“小作坊式"开发公司。步入21世纪以来,中华人民共和国软件公司才逐渐意识到软件过程管理重要性,并且也开始采用各种办法来提高自己软件过程管理能力,CMM(软件能力成熟度模型)影响力也越来越高。截止,国内达到CMM/C:MMl5原则公司已达到19家。(2)需求分析阶段一尽管国内软件公司也非常注重需求分析,但由于某些环境影响,往往不能在需求分析阶段做出抱负需求分析,往往在开发过程中,会有某些特殊需求。这些需求有需要花少代价完毕,有则直接导致整个软件项目成败。(3)人员配备由于软件产业在发展历程中留下某些旧思想,“英雄主义’’等概念还挥之不去,缺少良好团队意识。在人员配备方面,虽然也许有良好理念,但由于国内人才构造特殊性,使得人才配备在项目过程中也浮现许多漏洞。再加上开发人员之间缺少有效彼此交互通信方式,使得项目进展也会遇到不少阻力。通过30近年发展,国内软件产业虽没有美国、印度软件业发展壮大,但也获得了明显成绩,软件公司也结合自身某些特点形成了一系列软件开发管理方案。在其发展过程中,也显露了国内自身软件业某些优势。(1)内需优势随着国内制造业、物流以及公共事业迅速发展,再加上各级网络设施日趋完善,各行各业管理信息化呼声越来越高。国外~些先进管理理念也逐渐渗入到各行各业管理层,信息化管理早已在国内达到共识。因此,随着国内综合国力不断提高,对国内软件产业发展来说,是一种崛起最佳机会。(2)成本优势由于软件产业特殊性,它最大成本则是人员费用。国内软件产业中,人员费用和其她发达

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论