ajax实用技术教学课件作者程继洪肖川李海斌编著第12章学生选课(系统)的设计与实现第4部分综合案例.pptxVIP

  • 5
  • 0
  • 约2.05千字
  • 约 24页
  • 2019-10-11 发布于广东
  • 举报

ajax实用技术教学课件作者程继洪肖川李海斌编著第12章学生选课(系统)的设计与实现第4部分综合案例.pptx

第4部分 综合案例 第12章 学生选课(系统)的设计与实现 本章导读 ◆ Java Web项目的构建。 ◆ MVC开发模型。 ◆ 项目框架的概念及搭建。 ◆ 项目功能的实现过程(登录和选课)。 Ajax技术是Web前端开发技术,对后端(服务器)没有任何“特殊”要求——只要服务器可以接收HTTP请求,并返回字符串、JSON、XML或者二进制格式的数据即可。 所以Ajax技术的服务器端可以是ASP.NET、PHP或者JSP,或者其他服务器端脚本语言。 这也是Ajax技术的一大优势——“跨服务器”的适应性,本章以JSP或者说Java Web为服务器端,编写Ajax应用程序。 如果你对Java Web或者JSP技术不熟悉的话,完全可以把项目中的逻辑转换成其他的服务器端语言,或者只进行前端的设计学习,服务器端采用随书源代码,只需要简单的把实例项目部署到Tomcat(或其他Java Web服务器)上就可以运行了。 为了讲述上的方便,我们对实例进行了简化,主要体现在以下方面: ◆ 数据库的简化——只保留了了关键的字段;简化了表的数量,只保留能说明问题的基本表;简化了表之间的关系; ◆ 不采用日志——由于只是一个教学示例项目,不用于实际,所以没有采用日志功能。 ◆ 数据库连接采用直接连接的方法,而没有采用数据库连接池。 除了以上简化之外,都与实际项目开发过程是相同的。 项目完成的功能很简单,学生以自己的学号和密码登录,登录成功后可以选择课程,并予以保存,还可以查看自己的选课情况,删除不需要的课程。 就这么一个简单的功能,就可以反映Ajax的增删查改的操作及结果处理方法。实际复杂的项目无非就是这些操作非常多而已,没有本质上的差别。 12.1 创建Java Web项目 在Eclipse中新建Java Web项目过程如附录A2.1所示。新建的示例项目AjaxSyn如图所示。 12.2 搭建Java Web开发框架 框架就是指一个项目最基本的结构。 它包括项目的基本结构和一些基础功能。 基础功能就是在项目开发中反复使用的那些功能,这些功能是项目中经常使用,所以要作为框架的一部分,供开发过程复用。 这里采用MVC开发模型,即把项目分为三个基本的部分: 模型、视图和控制器。 模型主要实现项目中的业务逻辑处理; 视图主要用于收集用户数据或显示处理结果,也就是与用户交互; 控制器主要负责接收用户的请求,调用相应的模型功能,完成用户请求的处理,并通知相应的视图显示处理结果。 其结构图如图12-2[32]所示。 MVC模型结构的优点 ◆ 低耦合,高内聚——各组成部分(或称为组件)之间只通过规定的接口进行交互,各自完成自身的功能。所以,一个部分的改变不会影响到其他部分,降低了软件的耦合程度。 ◆ 可重用性好——各功能封装在不同的组件中,功能完全可以重复使用。只要符合组件的接口定义,就可实现功能的重复使用。 ◆ 生命周期成本低——MVC使得开发和维护用户接口的技术含量降低。 ◆ 部署快——使开发人员只需要专注于属性于自己的业务。如Java程序员集中于业务逻辑处理,前端开发人员则只需专注于网页前端(HTML、CSS和JavaScript/Ajax)的开发。从而加快了软件的开发速度。 ◆ 可维护性好——MVC使得各部分的组件相互独立,对某一部分的修改不会影响到其他部分,提高了软件的可维护性。 ◆ 有利软件工程化管理——MVC不同部分各司其职,各部分内部的开发都类似/相同的特征,有利于通过工程化的方法管理程序代码。 MVC结构模型反映在软件架构结构中,就是N-层结构模型。 用得最多的就是4-层结构模型,分别是:视图层、控制层、业务逻辑层和数据库访问层(也称为DAO层)。 下面分述如下: ◆ 视图层——也就是HTML网页,是用户查看结果、提交请求的地方。它位于图12-6所示的WebContent目录下。 ◆ 控制层——按照逻辑相关的原则,实现类似功能的类都放在同一个包(Java组织类的一种机制)中,在这里新建com.phoenix.servlet包(见附录A2.2),把所有负责控制结构的类都存放在此包中。 ◆ 业务逻辑层——与控制层类似,新建com.phoenix.logic包存放实现业务逻辑的类。 ◆ DAO层——也就是数据库访问层,新建com.phoenix.dao包存放实现数据库访问的类。 除上述3种Java类(控制类、业务逻辑类和DAO类)之外,还有一种描述事物本身的类,它表示需要处理的一个具体事物,如学生、课程等。 本来这样的类也应该属于业务逻辑的范畴,但与业务处理类不同,它不需要支持任何操作(get和set操作除外),只描述要处理的事物,所以把它另外存放在一个名为com.phoenix.bo的包中。 根据

文档评论(0)

1亿VIP精品文档

相关文档