【VC++开源代码栏目提醒】:网学会员--在 VC++开源代码编辑为广大网友搜集整理了:调度算法在单车核算系统中的应用研究 - 硕士论文绩等信息,祝愿广大网友取得需要的信息,参考学习。
浙江大学计算机科学与技术学院 硕士学位
论文调度算法在单车核算系统中的应用研究 级别:硕士 专业:计算机应用技术 指导教师:王泽兵 20090510浙江大学硕士学位
论文 摘要 摘要 随着
计算机和网络技术的不断发展,信息化已经深入到社会发展的方方面面。
在企业方面,将原有的业务体系信息化网络化已经成为一个非常迫切的问题。
杭州市公共交通集团有限公司的单车核算系统就是在这样的背景下提出并研发成功的。
该系统在现有的几个信息化管理系统的基础上,整合了相关的数据,实现了对单车,线路,车队,营运公司,集团公司的成本核算和利润的综合统计,为领导层提供了公司运营财务状况的详尽信息。
本文在实现了单车核算整体框架的基础上,针对系统涉及数据量极大而导致的计算性能问题,提出了相应的解决及改善方案并加以实现,最终系统很好的完成了预期的计算性能指标。
本文的主要工作如下: 1.讨论了研究课题的相关背景和目前的研究现状 2.讨论了整个系统框架构架的相关理论和技术,包括了J2EE的概述,MvC设计模式与Struts框架的介绍,ORM技术与Hibernate框架的原理。
3.首先介绍了单车核算系统的系统分析与设计,包括了系统需求分析,系统框架设计,业务流程设计,数据库设计以及软件平台构建。
接着分析了单车核算系统的框架实现,包括了配置文件的解析,视图层,控制层以及持久层的实现分析。
4.首先分析了调度算法在单车核算中的应用背景和研究意义,突出了单车核算系统计算中存在的因涉及数据量巨大而导致的性能问题,以其解决办法。
接着讨论了基于事务优先级的调度算法在单车核算系统的应用与实现。
然后分析了单车核算的流程,并介绍了单车核算中的一种核算方式的实现,并分析SOL优化在核算模块实现中的应用。
5.总结了全文的工作,并阐述了未来的研究方向,例如基于历史记录的分析改进方法等。
关键词单车核算Struts Hibernate优先级调度算法SQL查询优化浙江大学硕上学位
论文 Abstract Abstract Wi也unprecedented advances in computer science and network technology,informationization has exerted its influence on every aspect of social development.On the part of enterprises,it has become all urgent task to informationize andintemetize their existing business systems.A case in point is the Single Bus accountingsystem of Hangzhou Public Transport Corporation.Based on the original informationmanagement systems,the new system makes possible the cost—and—profit accounting ofa single bus,bus routes,bus teams and the corporation at large,providing full andaccurate data for the decision making process. Based the completion of the Single Bus accounting system,this paper puts onforward some measures to improve the performance of computers which was hinderedby the huge data of the existing system.These measures finally were proved valid andconstructive. Tbjs paper is intended to focus on the following research subjects: 1.a brief analysis of the related research background and the current state ofresearch; 2.an in—depth discussion of the important theories and technologies underlying thesystem,including discussion of J2EE,MVC design pattern,Struts framework,ORMand working theories of the Hibernate framework; 3.Following an introduction of the Single Bus accounting system which coVerSthe requirement analysis and framework design of this new system,business operationflow,database design and the software platform construetion,this paper discusses thesystem framework realization from the following aspects:the configuration files,theview layer,the control layer and the Data Persistence Layer; 4.After a discussion of the research background and research value of transactionscheduling algorithm in the Single Bus accounting system,this paper then turns to theperformance problem of the existing system caused by the huge data and puts forwardsome measures tO solve this problem.After that this paper introduces the realizationand application of the priority-based transaction scheduling algorithm in the SingleBus accounting system.TtliS paper also covers the analysis of the Single Busaccounting schedule and the application of SQL query optimization in submodulerealization. 5.At last,a summary of this paper is made,and the future research direction ispointed out,such as the history-based ways of analysis and improvementKeywords Single Bus accounting,Struts,Hibernate,priority-based schedulingalgorithm,SQL query optimization浙江大学硕士学位
论文 图目录 图目录 图2.1 J2EE三层体系结构………………………………………………………6 图2。
2 MVC设计模式……………………………………………………………7 图2.3 JSP作为独立自主的模块…….:…………………………………………..7 图2-4 JSP Model 1结构…………………………………………………………………………….8 图2.5 JSP Model 2结构……………………………………………………………………………9 图2.6 Struts体系结构…………………………………………………………..10 图2.7 Struts响应用户请求的工作流程………………………………………..13 图2.8 Hibernate的体系结构……………………………………………………15 图2—9 Hibernate核心接口工作流程图…………………………………………16 图3-1单车核算系统功能模块图………………………………………………19 图3.2单车核算系统用例图……………………………………………………24 图3.3单车核算系统实现框架…………………………………………………25 图3.4单车核算系统核算流程图………:……………………………………..26 图3.5员工基本信息……………………………………………………………34 图3-6新增员工…………………………………………………………………34 图3.7修改员工信息……………………………………………………………34 图3.8查询员工…………………………………………………………………35 图3-9
查询员工结果……………………………………………………………35 图4.1事务价值函数分类图……………………………………………………45 图4.2事务活动状态……………………………………………………………46 图4.3事务调度状态……………………………………………………………47 图4.4 VLSF优先级表…………………………………………………………..52 图4.5双向循环链表……………………………………………………………53 图4—6单车核算结算流程……………………………………………………..57 图4.7线路成本核算流程图……………………………………………………58 图4.8 SQL优化步骤……………………………………………………………59 图4.9开始核算…………………………………………………………………61 图4.10计算结果……………………………………………………………….61 IIl浙江大学硕十学位
论文 表目录 表目录 表3.1组织管理机构表………………………………………………………….27 表3.2人员信息表……………………………………………………………….27 表3.3线路信息表……………………………………………………………….28 表3.4车辆信息表………………………………………………………………28 表3.5核算项目表……………………………………………………………….29 表3.6基本数据表………………………………………………………………30 表3.7路单表…………………………………………………………………….3 1 IV浙江大学硕士学位
论文 第l章绪论 第1章绪论1.1课题来源 随着计算机和
网络技术的飞速发展,互联网的推广,以及www的广泛应用,人们可以方便快捷的获得各种信息,整个世界迈入了信息时代。
信息化的潮流对全球经济,政治,军事,科技,文化以及每个人的日常生活,工作都起到了非常大的影响,信息化是如今世界
经济和社会发展的必然方向。
信息技术的发展改变着人们的生活和工作方式的同时,也改变了传统的企业管理方式,基于信息化的企业
管理系统应运而生。
以往的单车核算完全由会计财务在账面上计算完成的方式,将逐渐被信息化计算的方式代替。
杭州市公共交通集团有限公司单车(线路)核算管理信息系统正是在这种信息化日益普及的背景下,根据公司内部管理的需要,提出建立的。
该系统是在杭州公交集团现有各个信息系统的基础上,实现功能独立运行的系统。
其信息的主要来源是与其他各系统实现信息共享,对于某些专项费用信息采用数据输入,然后根据单车核算管理的要求,按事先设计的分配方案把费用分摊到独立车号和线路。
通过对主营业务收入,主营业务成本,营运间接费用,辅助营运费,税金及附加,管理费用,财务费用的计算,最终实现对集团公司,营运公司,车队,线路,单车的成本核算和利润的综合统计。
1.2课题背景和研究现状 J2EE(Java2 Platform,Enterprise Edition)是SUN公司推出了一种多层结构的企业级应用构架,是由Sun公司领导各相关业内公司共同制定的并得到大多数人认同的行业标准,现在它作为一种企业级应用开发
方案已经得到了大量应用,如C/S,B/S及多层结构分布企业应用开发。
同时,随着越来越多的厂商将J2EE作为服务器端应用开发的优先开发平台,共享程序设计人员的研究成果以及得到可重用的的设计显得越发关键。
利用适当的设计模式会给我们找到解决一些同类型问题的解决方案提供帮助;同时,广泛的应用框架则可以在大大的提高系统的开发速度,降低系统的开发成本。
随着技术的发展,MVC模式应用到了2EE体系之中。
MVC模式是一种现在应用非常广发的设计模式,它的控制器可以很好的对模型和视图进行发力,使得表示层和业务层之间的藕合度大大降低,很好的改善了基于WEB的应用系统设计和浙江大学硕士学位
论文 第l章绪论研发过程当中因为结构复杂或者结构功能混杂而给开发带来的困难,例如系统层次之间的藕合程度,程序
代码很难维护,系统组件的重用性等等问题。
实现MVC模式的框架有很多,而且其中有些都已经得到广泛应用了。
Struts框架就是被大量应用在大型企业级Web开发上的一个很好的框架。
Struts框架工具是Apache基金会Jakarta项目中推出的一个子项目。
Struts为系统应用提供了通用的框架,让程序员可以把精力集中在完成业务逻辑的编写
问题上面,与此同时Struts框架还可以让程序员根据实际的项目需求进行必要的扩展和,这也便可以更好的应对用户提出的各种要求。
利用Struts框架设计系统简化了按照MvC设计模式的开发系统的过程,提供了现成的框架组件,通过
代码重用,使程序员从一些底层比较麻烦的工作中解放出来,集中精力实现业务逻辑,方便快捷的开发Web应用。
Hibernate是一个
开源的0RM框架,它通过对JDBC的轻量级封装,可以给系统提供方便而又强大的关系数据库的持久化支持。
利用Hibernate框架,可以让开发人员以面向对象的思想操作数据库中的表,透明的完成对关系数据库的操作,而不用浪费太多的精力去开发那些非常繁杂的数据库操作
代码以实现系统的持久层,从而使得整个系统的开发难度和复杂度得到大大的降低,大大改善了
程序的开发效率,加快系统完成进度。
Hibernate可以支持Oracle,SQL Server,DB2等目前比较流行的关系数据库,这使得应用起来更加广泛。
在数据库事务调度模型中,对于不同的事务根据其自身的特点有不同的分类。
在事务运行前,应该制定合理的优先级策略和并发控制方式,尽可能的使事务能够在其截止期内完成规定的操作。
同时在执行过程中,划分好事务的活动和调度状态,采用高效的调度模式,对事物的高效率的执行很有必要。
事务的调度分为两个部分,一个是优先级的分配,另一个是并发控制。
事务调度一般都是以基于优先级的算法进行调度的,因为事务的优先级一般决定了事务的重要性,比较重要的事务应该首先完成。
而优先级的决定取决于多种因素,
常用的有事务的释放时间,事务的截止时间,事务的已执行时间,事务的空余时间,事务的关键程度等。
另外,如果在单处理器中不允许高优先级抢占操作,则事务之间的执行是串行的,这时不必采取任何并发控制措施。
但是在单处理器中允许高优先级抢占操作或者在多处理器情况下,事务之间的执行则是并发的。
从大多数系统的应用实例来看,随着数据库中数据的增加,系统的响应速度就成为系统需要解决的最主要的问题之一。
系统优化中一个很重要的方面就是SQL语句的优化。
据统计,约有90%的性能问题是由于程序员或用户使用了不恰当的查询语句造成的,因此SQL语句的质量对整个系统效率有重大关系。
对于海 2浙江大学硕士学位
论文 第1章绪论量数据来说,劣质SOL语句和优质SOL语句之间的速度差别可以达到上百倍,甚至更多。
1.3本文的主要
工作 本文的主要工作如下: 1.讨论了研究课题的相关背景和目前的研究现状 2.讨论了整个系统框架构架的相关理论和技术,包括了J2EE的概述,MVC设计模式与Struts框架的介绍,ORM技术与Hibernate框架的原理。
3.首先介绍了单车核算系统的
系统分析与设计,包括了系统需求分析,系统框架
设计,业务流程设计,数据库设计以及软件平台构建。
接着分析了单车核算系统的框架实现,包括了配置文件的解析,视图层,控制层以及持久层的实现分析。
4.首先分析了调度算法在单车核算中的应用背景和研究意义,突出了单车核算系统计算中存在的因涉及数据量巨大而导致的性能问题,以其解决办法。
接着讨论了基于事务优先级的调度算法在单车核算系统的应用与实现。
然后分析了单车核算的流程,并介绍了单车核算中的一种核算方式的实现,并分析SOL优化在核算模块实现中的应用。
5.总结了全文的工作,并阐述了未来的研究方向,例如基于历史记录的分析改进方法等。
1.4本文章节安排 第1章绪论:从课题来源,课题背景和研究现状,章节安排等方面简要介绍了本
论文的选题背景与基本框架。
第2章系统框架构建相关理论:首先介绍了J2EE的概念和J2EE的分层结构;然后介绍了MVC设计模式与Struts框架,包括了MVC涉及模式的概念,Java Web应用开发的两种模式,以及基于MVC的Struts框架的体系结构,主要组件和工作流程。
最后介绍了ORM和Hibernate的概念,以及Hibernate的运行机制。
第3章单车核算系统分析设计与框架实现:首先分析了系统的需要,从系统的目的出发,引入业务逻辑需求和性能需求,接着给出了系统的用例图。
然后对系统进行了总体的设计,先介绍框架设计,再分析了系统的业务流程设计,跟着对系统的数据字典设计进行了详细的介绍。
接着介绍了系统
软件平台的构建,对开发系统所用到软件或框架作了简单的分析。
随后介绍了单车核算系统框架实现,首先展示了系统模块实现界面,然后分析了配置文件,接着分别对视图层, 3浙江犬学硕上学位
论文 第1章绪论控制层以及持久层的实现进行了详细的阐述。
第4章调度算法在单车核算中的应用:首先分析了调度算法在单车核算中的应用背景和研究意义,然后介绍了基于事务的调度算法,接着分析了基于事务优先级的调度算法在单车核算系统的应用与实现。
随后介绍了单车核算的流程,以及单车核算子模块的实现,最后给出了单车核算的实现结果展示。
第5章总结:总结了全文的工作,并对未来工作方向作出了阐述。
1.5本章小结 本章从课题来源,课题背景和研究现状,
论文主要工作,章节安排等方面简要介绍了本
论文的选题背景与基本框架。
4浙江大学硕士学位
论文 第2章系统框架构建相关理论 第2章系统框架构建相关理论2.1 J2EE概述 J2EE(Java 2 Platform Enterprise Edition)是SUN公司推出的一整套基于Web的企业级应用开发规范。
J2EE技术的根本是J2SE,它具有J2SE的众多优点,比如“编写一次,随处运行’’的特性,简化操作关系数据库的JDBC等技术,还对基于Web的开发提供了强有力的支持,包括Servlet,JSP,XML,还通过对EJB方便开发企业级应用。
J2EE架构的广泛应用,解决了以往C/S模式中存在诸多诟病,通过建立多层体系,更多的重用组件,简化Web应用的研发和部署,程序员的精力可以主要放在业务
代码和表达
代码的开发上,而不用再理由底层麻烦的系统问题。
2.1.1 J2EE的分层结构 J2EE便是拥有着三层体系结构的一个典型代表‘2引,其结构如图2-1所示: 客户端机器 数据库服务器 广_一 浏览器 W曲容器 ‘磊习 纯HTML JSP EJB Java Applet JSP EJB 桌面 Java EJB Java Servlet Application 其它设备 J2EE J2EE J2EE Platform Platform Client 5浙江大学硕十学位
论文 第2章系统框架构建相关理论 图2.1 J2EE三层体系结构 ●客户层 客户层运行在客户端的计算机上面,用来同用户进行交互,还可以获取 用户输入的输入,并能将系统处理过的信息返回给用户。
客户层可以是 网络浏览器,或是桌面应用程序等i ·应用服务器层 应用服务器层运行在应用服务器上面,包括了Web层和业务逻辑层,用 来实现业务逻辑。
其中,Web层完成表现功能,首先接收用花请求,并 将请求发送到业务层处理后回复用户的请求。
业务逻辑层则是实现系统 功能的一个核心层次,它负责系统业务逻辑的处理,提供各种应用服务, 操控数据库,与底层企业信息系统交互。
● 企业信息系统(EIS)层 企业信息系统层运行在数据库服务器上面。
主要用于企业信息系统的存 储管理,主要是数据库系统管理,目录管理等。
J2EE应用系统会频繁的 访问企业信息系统层来得到用户请求相关的数据信息。
2.2 MvC设计模式与Struts框架2.2.1 MvC设计模式 MVC是Model.View.Controller的简称,也就是即模型一视图一控制器模型, r001它是一种现在用的比较多的设计模式“…。
MVC是Xerox PARC在上世纪80年代为Smalltalk.80特意研究出来的的一种软件设计模式。
它可以将业务逻辑和数据表示逻辑分离,还可以让应用的行为独自从其他模块中分离出来,是观察者模式的一种比较典型的应用。
2.2.1.1 8VC设计模式概述 MVC设计模式把这个系统分成了三个相互协作的部分:模型(Model),其中含有整个应用系统的核心功能,而且还对系统状态进行了封装;视图(View),可以显示模型的状态,是用户与系统交互的主要途径。
同时,每当模型的状态被改变是,应该通知给视图知晓,从来更新新的视图以显示系统当前状态;控制器(Contr01),则是负责接受用户的请求,还可以调用模型,改变模型状态。
它通过强制性隔离系统的用户请求,业务处理和请求回复,明确各自的职能。
其处理过 6浙江人学硕十学位
论文 第2章系统框架构建相关理论程如图2.2所示。
图2—2 lVIVC设计模式2.2.2 Java Web应用开发模式2.2.2.1 JSP+Date Base模式 在初期的Java Web系统之中,JSP一般用来完成业务逻辑,还需要控制业务流程,并负责生成HTML。
它的处理流程如图2.3。
图2.3 JSP作为独立自主的模块 在JSP+Data Base模式中,每一个JSP文件都是独立自主完成业务逻辑的功能 r001模块,这给导致了下面这些问题的出现“…: ● HTML网页
代码和Java
代码混杂在一起; · 内嵌的流程逻辑:想要弄清楚系统的业务流程,就要逐个查看所有的网页; ·调试非常困难:除了混杂的
代码带来的杂乱观感之外,在系统开发过程中, 程序员调试程序也变得很麻烦。
·强耦合:业务逻辑改变会涉及多个其它模块,需要逐个修改,给开发带来 7浙江大学硕十学位
论文 第2章系统框架构建相关理论 诸多不便。
2.2.2.2 JSP Model 1模式 JSP Model 1是指JSP+Java Bean技术。
不过在JSP Model 1中,JSP页面不用处理业务逻辑,而是下放给.