【摘要】:近年来,随着网络技术的迅速发展和J2EE(Java2 P latform Enterprise Edition)平台的广泛采用,基于B/S的多层Web体系结构逐渐发展成熟起来。MVC(Model-View-Controller)设计模式能够克服传统Web应用开发方式所固有的弊端,分离了数据的控制和数据的表现,以适应越来越复杂的多层Web应用系统的设计需求。因此,采用基于MVC设计模式开发J2EE Web应用成为开发人员的首选。
Apache Struts是一个基于12EE平台、实现了MVC设计模式的典型框架,模型由实现业务逻辑的JavaBean或EJB组件去构成,控制器由Action Serviet和Action构成,视图由一组JSP文件构成。它全面减轻了构建多层Web应用的负担,提供可复用的软件构架,其重要问题是配置文件struts-config.xml的设计。Struts提供了自己的控制器组件,并整合了其他相关技术用于实现MVC设计模式中的模型组件和视图组件。Struts适合于各种大小的项目,当然,对于大型项目,它所体现出来的优势更加明显。
ORM 是对象到关系数据库的映射。它是面向对象设计中一项重要的技术。Hibernate是一个面向Java环境的对象/关系数据库映射工具。它不仅仅管理Java类到数据库表的映射, 还提供数据查询和获取数据的方法。这样,Java程序员就可以随心所欲地使用对象编程思想来操纵数据库,把全部精力集中到对对象和类进行编程,解决业务问题。其中,Hibernate作为O-R Mapping中最好的开源工具,受到越来越多的程序员的拥护。
本文首先介绍了J2EE的基本知识和MVC设计模式,在此基础上,再说明Struts框架的体系结构和基本原理,并通过数据持久层概念的提出,介绍了Hibernate的基本知识。接着介绍教师选课管理系统功能需求分析,面向对象设计与分析,系统结构设计和系统详细设计,最后介绍教师选课管理系统的安装说明与运行。
【关键词】MVC;Java;j2EE;Hibernater;Struts;Oracle;JDK
【Abstract】 In recent years,the network technology has been developed quickly and the platform of J2EE(Java2 Platform Enterprise Edition) has been adopted extensively.And the multi-layer web architecture based on B/S pattern matures gradually.The Model-View-Controller pattern discards disadvantages which the design pattern in traditional web application has . It separates the control of the data and the view of the data so as to meet the demand to the multi-layer web application complicated more and more .So MVC pattern is the best choice to develop the J2EE web application.
Apache struts framework based on the J2EE platform , is a typical framework to implement the Model-View-Controller(MVC) design pattern . Model is made up of JavaBean or EJB that implement the business logic . Controller is constituted by Action Servlet and Action .A group of JSP files constitute view .The framework lightens the burden to construct the multi-layer web application and provides components which can be reused . The design of the struts-config.xml and the configuration file is an important part for the struts framework .Struts provides controller component and integrates other related technologics to implement the model component and view component of MVC pattern . Struts are fit for all kinds of projects especially for large ones which can embody more advantages of struts .
ORM means object-relational mapping .It is an important technique in object-oriented designing . Hibernate is an ORM tool for java environment . It manages the mapping from java classes to database tables and the operation of persistent objects . So ,Java programmers can freely manipulate database by object programming idea , as well as pay attention to object programming and class programming , and solve the operation problems .Hibernate becomes the best tool of O-R Mapping and get the more and more programmers’s love .
The section firstly described the architecture and principle of Struts framework basing on MVC model ,Secondly,through raising the conception of data persistence layer ,introduced the basic knowledge of Hibernate. Thirdly , through an example of applying struts and Hibernate framework to Teacher Choose The Course management system. Finally, describe the system needs analysis, object-oriented design and analysis, system architecture design and detailed design and the management system for installation instructions.
【Key words】MVC;Java;j2EE;Hibernater;Struts;Oracle;JDK
第1章:项目背景
随着计算机以及高校办公自动化技术的发展,为使教师选课建设与管理工作更加规范化、科学化,建设一个教师选课管理系统已显得非常重要。正是这种需求的推动下,高校教师选课管理系统应运而生。
本项目基于B/S结构的WEB项目,大大方便了网络用户的使用,使实验室和老师及学校有关部门之间能够快速、及时地进行沟通,实现了教师选课信息化管理,提高学校信息化管理工作水平,都具有重要的实用价值。项目主要模块包括:教师管理模块、选课管理模块、系统管理模块。
第2章:Struts框架与Hibernate体系的分析
2.1 Struts框架
2.1.1 MVC设计模式
MVC是一种设计模式,把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个核心模块:模型、视图、控制器,分们分别承担不同的任务,下图显示了这几个模块各自的功能和他们的相互关系。
视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但也有可能为XHTML, XML和Applet。随着应用的复杂性和规模性,界面的处理也变得具有挑战性。一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。业务流程的处理交予模型(Model)处理。比如一个产品的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制器和模型。
模型(Model):就是业务流程状态的处理以及业务规则的制定,。业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。业务模型的设计可以说是MVC最主要的核心。目前流行的EJB模型就是一个典型的应用例子,它从应用技术实现的角度对模型做了进一步的划分,以便充分利用现有的组件,但它不能作为应用设计模型的框架。它仅仅告诉你按这种模型设计就可以利用某些技术组件,从而减少了技术上的困难。对一个开发者来说,就可以专注于业务模型的设计。MVC设计模式告诉我们,把应用的模型按一定的规则抽取出来,抽取的层次很重要,这也是判断开发人员是否优秀的设计依据。抽象与具体不能隔得太远,也不能太近。MVC并没有提供模型的设计方法,而只声明应该组织管理这些模型,以便于模型的重构和提高重用性。业务模型还有一个很重要的模型那就是数据模型。数据模型主要指实体对象的数据保存(持久化)。比如将一个产品信息数据保存到数据库,从数据库获取订单。我们可以将这个模型单独列出,所有有关数据库的操作只限制在该模型中。