资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,哈尔滨工业大学软件学院,*,和佳,NERP,财务管理系统应收子系统的设计与实现,姓 名:,班 号:,实习单位:北京和佳公司,校内导师:,企业导师:,1/20/2026,1,哈尔滨工业大学软件学院,导航,项目背景,系统架构,主要开发内容,系统需求分析,详细设计,实现及性能分析,致谢,1/20/2026,2,哈尔滨工业大学软件学院,项目背景,计算机技术的发展推动了,ERP,产品的更新换代。,传统的基于,C/S,结构的,ERP,系统在开放性与信息的发布、交流等方面越来越显示出巨大的局限性,严重影响到企业适应全球性信息化进程的步伐。,B/S,架构克服了,C/S,架构的缺点。,在此背景下,和佳公司提出了在,J2EE,平台上开发新一代,ERP,的任务。,1/20/2026,3,哈尔滨工业大学软件学院,主要开发内容,应收子系统的功能,管理应收帐款日常业务,提供简单的数据分析功能,应收子系统的目标,:,及时处理客户应收款和回款,及时催讨欠款,使企业的应收款处在合理的范围内,促进企业流动资金的正常运转,1/20/2026,4,哈尔滨工业大学软件学院,系统模块划分,系统设置,应收单管理,回款单管理,应收与回款结算,转账管理,坏账管理,月末结算,统计查询,1/20/2026,5,哈尔滨工业大学软件学院,系统分析,获取需求的过程:在分析客户需求的基础上,列出一系统的用例和场景,对用例进行细化,同时画出单据的状态转换图。,应收管理子系统中最重要的功能模块为应收单管理、回款单管理、应收与回款结算。,1/20/2026,6,哈尔滨工业大学软件学院,应收单管理用例,1/20/2026,7,哈尔滨工业大学软件学院,应收单状态转换图,1/20/2026,8,哈尔滨工业大学软件学院,系统整体架构,系统是基于,MVC,(,Mode-View-Controller,)架构模式的。,MVC,代码将程序代码整理分割成三部分,,Model,部分是业务逻辑对象,,Controller,部分接受来自,View,输入的信息并与,Model,部分进行交互,是业务流程控制对象,,View,部分负责展现数据、接受用户录入。,将,MVC,模式应用于,Web,系统中:,JSP,用于实现,View,,,Servlet,用于实现,Controller,,,EJB,用于实现,Mode,。,1/20/2026,9,哈尔滨工业大学软件学院,1/20/2026,10,哈尔滨工业大学软件学院,数据库表,表名,描述,art01,往来明细账表,art02,回款表,art03,总账表,art04,往来结算表,art05,转账记录表,rpm01,账龄设置表,1/20/2026,11,哈尔滨工业大学软件学院,功能设计,从前台页面、后台逻辑处理、前后台接口三个方面分别进行。,前台页面设计:页面显示的内容和格式,放在前台的逻辑代码(如数据验证、数据提交等操作),后台页面设计:,EJB,的接口,1/20/2026,12,哈尔滨工业大学软件学院,应收单录入页面设计,1/20/2026,13,哈尔滨工业大学软件学院,EJB,设计,ArManagerEJBBean,管理应收单据,,包括应收单据的增、删、改、送审、审核、驳回等业务处理逻辑,IncomeEJBBean,管理回款单,,包括回款单增、删、改、送审、审核、驳回、结算等业务处理逻辑,ARBookEJBBean,管理应收台账,ArInitMainEJBBean,初始化时的操作,1/20/2026,14,哈尔滨工业大学软件学院,ArManagerEJB,类图,1/20/2026,15,哈尔滨工业大学软件学院,前后台接口的设计,Extra Updater,类的设计,在前台页面按钮和后台逻辑代码之间建立连接,提取前台传来的数据,然后构造,VO,,再将,VO,传给,EJB,处理,在此过程中捕获例外,将例外信息返回前台页面,1/20/2026,16,哈尔滨工业大学软件学院,系统实现,前台页面:,JSP+JavaScript+Extra,Java,类:,Eclipse3.0+Lomboz+Hibernate,Syncronizer,Java,类的编程标准,在,EJB,远程方法开始的位置打开,Session,,在,EJB,方法退出时关闭,Session,将捕获的例外包装成,AppException,后抛出,在,Updater,里使用,ExceptionUtil,工具类捕获例外,保存数据时,先保存主表数据,然后保存从表数据,删除时相反,1/20/2026,17,哈尔滨工业大学软件学院,报表,系统提供了统计查询的功能。可以打印报表。报表使用,Jasper Report,开发,客户端有一个,r,eportApplet,,负责打印报表。它生成一个,JRViewer,,将它添加到,JFrame,上显示出来。,用于生成,JRViewer,的,JasperReport,对象有两种来源:一是使用,Struts,从服务器传递,JasperReport,对象到客户端,一是在客户端利用前台页面数据构造,XML,数据来生成,JasperReport,对象。,1/20/2026,18,哈尔滨工业大学软件学院,使用,Struts,实现帐龄分析页面,列数随用户设置的帐龄区间段数目改变而改变,使用,Struts,可实现这种需求,Struts,将,Http,请求提交给,Action,处理,在,Action,里调用,EJB,构造出每一行数据,然后利用,ActionForward,将请求提交给一个,JSP,页面,在页面里拼凑出表格来。,1/20/2026,19,哈尔滨工业大学软件学院,性能分析,使用的应用程序服务器是,JBoss3.2.3,测试中发现不少复杂页面的显示速度非常慢,有些页面要等待,10,秒以上才能显示出来,发现系统的性能瓶颈在于,Extra,上,1/20/2026,20,哈尔滨工业大学软件学院,系统改善与提高,通过采取一些措施,可以弥补,Extra,的性能缺陷,尽量减少,Extra Dataset,的使用。这是因为每个,Dataset,都要跟数据库进行交互,严重影响了性能。,未使用的数据库字段不要放到,Extra Dataset,里。,尽量减少前台页面里的事件处理代码。在前台页面里加入大量事件处理代码,这些事件容易造成连环调用,造成页面长时间处于运算状态。,手工优化,SQL,语句。糟糕的,SQL,语句是影响系统性能的一个重要因子。,可以考虑为数据库建立索引。,我用了大量的时间,仔细检查了页面代码,做了大量的优化工作。经过优化,现在页面响应时间已经明显提高,基本可以满足用户的需要。,1/20/2026,21,哈尔滨工业大学软件学院,感谢,感谢老师的耐心指导,感谢工程师的在业务和技术上的指导,感谢软件学院的老师为我们创造的实习机会,感谢各位评委的指导,1/20/2026,22,哈尔滨工业大学软件学院,
展开阅读全文