通信与电子实践教育中心
web应用开发技术
发布时间: 2016-07-03     发布人: 徐贤     访问次数: 369

 

The Development Technology of Web Application

课程编号:

109305

分:

2

开课单位:

电子信息工程学院

总学时:

48

课程类别:

专业选修课

课程性质:

任选


一、课程的性质和目的

课程性质:本课程是电子信息工程、电子科学与技术、通信工程、微电子科学与工程专业的一门专业选修课。Web技术是IT领域的一项关键技术,是网上信息应用的基础,是信息管理、计算机等专业的一项主要技术基础,它也是从事信息事业的技术人员和管理者需要掌握的重要技能之一。Java作为Sun公司推出的一门优秀的语言,具有面向对象、跨平台、安全、稳定、易用、多线程及可扩展等特性。Java语言不仅可以用来开发大型的应用程序,而且特别适合开发Web程序,是目前使用最广泛的Web程序设计语言。

本课程正是以掌握Java Web应用开发为目标,介绍了Web应用开发多个层面上的技术。针对Java Web初学者,按照由浅人深、通俗易懂的原则介绍了Java Web应用开发基础知识、高级技术、编程应用实例,让学生了解、掌握Java Web应用及开发的基本思想,能用它编制面向对象和网络化的程序,并且能够根据实际需求编制出一些实用的程序。

目的:

1. 了解、掌握Java Web技术的基本思想、开发工具和运行环境;

2. 了解、掌握HTTP协议和Servlet技术的相关知识;

3. 掌握JSP的运行机制、指令和动作,并能熟练使用JSP内置对象;

4. 掌握Java Web开发的两种模式及开发中的常用技巧;

5. 掌握JSP表达式语言和标准标签库;

6. 能够创建自定义JSP标签;

7. 了解、掌握Servlet过滤器和监听器的原理及应用;

8. 了解Log4J的配置,能够在实际的开发中使用及优化Log4J

9. 了解掌握Hibernate框架及Spring框架;

10. 了解并掌握Java Web应用中几个常用的技术。

  

二、课程教学内容及基本要求

(一)课程教学内容及知识模块顺序

1.知识单元一: Web应用概述(1学时)

1)知识点一:Web应用体系结构

2)知识点二:服务器的安装

3)知识点三:HTTP基础

4)知识点四:动态Web文档技术

5)知识点五:ServletJSP入门

教学基本要求:

了解Internet和万维网(World Wide Web)的概念和两者之间的关系。了解超文本、HTMLXMLWeb工作机制。学习IP地址、域名和URL的概念和原理。了解Web相关知识,以及目前的一些新发展。了解主流的Web开发技术及其特点。了解Java Web应用的核心技术。

2. 知识单元二: Servlet技术模型(1学时)

1)知识点一:Servlet API

2)知识点二:Servlet的执行过程和生命周期

3)知识点三:分析请求

4)知识点四:发送响应

教学基本要求:

了解HTTP的请求/响应模型,掌握Servlet的基本概念,理解如何分析请求和如何发送响应。

3. 知识单元三: Servlet容器模型(1学时)

1)知识点一:Web应用的结构和部署

2)知识点二:部署描述文件

3)知识点三:ServletConfig接口

4)知识点四:ServletContext接口

5)知识点五:Servlet的多线程问题

教学基本要求:

了解Web应用程序的目录结构,掌握部署描述文件主要元素的使用,掌握ServletConfig接口的使用,理解和掌握ServletContext接口的使用,理解Servlet多线程问题。

4.知识单元四: 会话管理(1学时)

1)知识点一:会话管理

2)知识点二:通过Cookie支持会话

3)知识点三:URL重写与隐藏表单域

教学基本要求:

掌握Web应用的会话概念,重点掌握通过HttpSession实现会话管理,掌握使用Cookie跟踪会话机制,了解通过URL重写和隐藏表单域跟踪会话。

5.知识单元五: JSP技术模型(3学时)

1)知识点一:JSP语法概述

2)知识点二:JSP页面生命周期

3)知识点三:理解page指令属性

4)知识点四:JSP进阶

5)知识点五:JSP隐含变量

6)知识点六:理解作用域对象

教学基本要求:

了解并掌握JSP各种语法元素,掌握JSP页面的转换过程和生命周期,掌握JSP页面的page指令属性,掌握JSP的隐含对象的使用,理解各种作用域对象。

6.知识单元六: Web组件重用与JavaBeans1学时)

1)知识点一:静态包含

2)知识点二:动态包含

3)知识点三:在JSP中包含Java Applet

4)知识点四:JavaBeans概述

5)知识点五:在JSP中使用JavaBeans

6)知识点六:在Servlet中使用JavaBeans

7)知识点七:在JSP脚本中使用JavaBeans

8)知识点八:MVC设计模式

教学基本要求:

了解并掌握静态包含和动态包含的含义,掌握include指令和jsp:include动作的使用,了解什么是JavaBeans及其序列化,重点掌握通过JSP标准动作使用JavaBeans,掌握MVC设计模式。

7.知识单元七:JDBC数据库访问(2学时)

1)知识点一:数据库简介

2)知识点二:Java数据库技术概述

3)知识点三:传统的数据库连接方法

4)知识点四:JDBC API介绍

5)知识点五:访问数据库元数据

6)知识点六:预处理语句

7)知识点七:使用数据源连接数据库

8)知识点八:DAO设计模式介绍

9)知识点九:可调用语句

10)知识点十:数据库事务处理

教学基本要求:

掌握传统的数据库连接方法,掌握常用JDBC API的使用,掌握通过数据源建立连接的方法,了解数据库事务的操作。

8. 知识单元八: 使用表达式语言(1学时)

1)知识点一:理解表达式语言

2)知识点二:使用EL运算符

3)知识点三:使用EL访问数据

4)知识点四:在EL中使用函数

5)知识点五:在JSP页面中禁用EL

教学基本要求:

了解EL,掌握如何在JSP中使用EL,掌握EL的各种运算符,掌握在EL中访问作用域变量/JavaBeans属性/集合对象元素,掌握在EL中隐含对象的使用,掌握如何在EL中使用Java函数。

9.知识单元九:自定义标签的开发(1学时)

1)知识点一:简单标签的开发

2)知识点二:理解TLD文件

3)知识点三:几种类型标签的开发

4)知识点四:传统的自定义标签

教学基本要求:

了解并掌握简单自定义标签的开发,理解TLD文件,掌握常用类型标签的开发。

10. 知识单元十: JSTL与标签开发(1学时)

1)知识点一:JSTL标准标签库

2)知识点二:核心标签库

3)知识点三:其他JSTL标签库

4)知识点四:使用标签文件

教学基本要求:

掌握标准标签库的使用,重点掌握核心标签库的使用,了解标签文件的建立和使用,了解标签指令的使用。

11.知识单元十一: Web事件处理与过滤器(1学时)

1)知识点一:Web应用的事件模型

2)知识点二:Web应用的过滤器

教学基本要求:

掌握Web应用程序的事件处理机制,掌握过滤器的使用。

12. 知识单元十二: Web应用的安全性(1学时)

1)知识点一:理解验证机制

2)知识点二:安全域模型

3)知识点三:定义安全约束

4)知识点四:程序式的安全

教学基本要求:

了解Web安全的概念,掌握验证机制,掌握声明式的Web应用安全,掌握程序式的Web应用安全。

13. 知识单元十三: SSH框架介绍(1学时)

1)知识点一:MVC

2)知识点二:框架Framework

3)知识点三:SSH架构(Struts+Hibernate+Spring

教学基本要求:

理解SSH架构。

(二)课程的重点、难点及解决办法

重点:requestresponseoutsessionapplication对象,使用JSP脚本和指令编写JSP页面,使用JSP页面中的JSP表达式语言生成动态内容,定义过滤器和将过滤器映射至特定的Web资源,实现一个简单的过滤器,理解MVC的各个组件和开发MVC应用程序。

难点:作用域通讯对象及作用域的理解,taglib指令,访问变量的值和使用隐式对象, FilterConfig接口和过滤器链,理解MVC体系结构的各种对象。

解决方法:加强理论教学,在教学中应注意重点和难点内容。教学中要精心设计,突出重点,突破难点。理论课的课堂教学要和多媒体课件相结合,充分运用动画效果,增加教学的感性与理性学习效果。通过习题和上机实践,使学生加深对教学内容的理解。


三、实验实践环节及基本要求

1.实验实践教学环节在本课程中的作用及要求

本课程具有很强的实践性和实用性,上机实践环节对于整个课程的学习至关重要。学生通过上机实践才能更好地巩固理论知识,使理论与实际相结合,从而提高程序设计能力和计算机操作能力。

本课程实践环节主要让学生在JDK开发环境下,巩固学生所学的Java Web理论知识,培养学生的编程能力,使学生能够利用Java Web设计技术的方法完成简单的项目设计与开发,能够编写基于MVC模式的Java Web应用。

2.实验项目

1)实验一:JDK配置与Tomcat服务器(2学时)

内容:搭建开发环境平台,练习web服务目录的设置,借助编辑器Dreamweaver进行HTML文件的编写和运行,编写和运行一个简单的Servlet

要求:了解和掌握ServletJSP页面的编写和运行,比较ServletJSP的区别和联系,体会动态页面的含义。

2)实验二:HTTP请求对象/ HTTP响应对象(2学时)

内容:通过查询串传递请求参数,并在Servlet中检索请求参数;通过表单传递请求参数,使用HttpServletRequest对象获得请求参数;编写一个Servlet,显示所有请求头。

要求:掌握如何获得请求参数,如何检索请求头。了解如何通过请求对象获得客户信息。重点掌握使用请求对象存储数据和请求转发。了解和掌握如何从响应对象获得输出流对象。掌握如何设置响应类型,重点掌握如何实现响应重定向。

3)实验三:Servlet容器模型(2学时)

内容:建立一个名为bookstoreWeb应用程序;使用ServletConfig检索Servlet的初始化参数;ServletContext的使用。

要求:掌握Web应用程序的DD文件web.xml的配置方法和作用。掌握如何通过ServletConfig获取Servlet的初始化参数。掌握ServletContext的概念,如何获得ServletContext对象。

4)实验四:会话管理(2学时)

内容:使用HttpSession对象管理会话;使用Cookie跟踪会话。

要求:了解Web服务器对客户跟踪的各种方法。重点掌握使用HttpSession对象跟踪会话的方法。 掌握使用Cookie技术跟踪会话的方法。了解URL重写和隐藏表单域的方法。

5)实验五:JSP基本语法与页面指令(2学时)

内容:编写JSP页面;errorPage属性和isErrorPage属性的使用;练习使用include指令。

要求:熟练掌握JSP的声明、表达式、小脚本和注释的使用,理解JSP页面(page)指令和动作的语法格式,理解JSP页面的生命周期。熟练掌握page指令的下面的属性:importsessionerrorPageisErrorPagecontentTypepageEncoding。理解page指令的下面的属性:languageextendsbufferautoFlushinfo

6)实验六:JSP隐含对象与作用域(2学时)

内容:了解隐含对象是如何定义的;练习各种隐含对象与作用域变量的使用;错误页面与异常处理。

要求:掌握全部9个隐含对象的使用;理解4种作用域对象。

7)实验七:JSP动作(2学时)

内容:运用include指令;练习使用<jsp:include><jsp:forward>标准动作。

要求:理解静态包含和动态包含的概念,掌握相关指令和动作的使用。

8)实验八:JavaBeansJDBC学习(2学时)

内容:练习使用JSP页面中的不同动作。

要求:掌握JavaBeans的含义和创建,重点掌握在JSP页面中使用JavaBeans的标准动作,掌握使用传统的方法访问数据库。

9)实验九:JDBC API2学时)

内容:通过数据源访问数据库。

要求:掌握使用数据源的方法访问数据库,重点掌握在JSP页面中使用JDBC API

10)实验十:MVC设计模式(2学时)

内容:采用MVC设计模式,通过数据源和DAO对象访问数据库。其中JavaBeans实现模型,访问数据库,Servlet实现控制器,JSP页面实现视图。

要求:掌握使用MVC设计模式的编程方法。

11)实验十一:表达式语言的使用(2学时)

内容:表达式语言运算符的使用;练习访问作用域变量;练习隐含对象的使用。编写对应java函数。

要求:了解表达式语言的功能,掌握表达式语言的使用。

12)实验十二:用户自定义标签(2学时)

内容:开发一个简单的SimpleTag标签;开发一个空标签,该标签显示一个红色星号;开发带属性的标签;开发带标签体(JSP代码)的标签;开发带动态属性的标签。

要求:了解什么是自定义标签。掌握使用SimpleTagSimpleTagSuppot开发简单标签。了解传统自定义标签的接口和类的使用。

13)实验十三:JSTL与标签文件(2学时)

内容:JSTL的安装和测试;练习表达式相关标签的使用;练习流程控制标签的使用;URL相关标签的使用。

要求:了解什么是JSTL;掌握JSTL的核心库标签的使用;掌握标签文件的开发和使用。

14)实验十四:Servlet事件处理(2学时)

内容:编写一个ServletContext事件监听器;编写一个HttpSession事件监听器用来记录当前在线人数;编写一个ServletRequestListener监听器。

要求:了解在哪些对象上可以产生事件,掌握ServletContextHttpSession对象上的事件处理方法,了解在ServletRequest对象上的事件及处理方法。

15)实验十五:Servlet过滤器的使用(2学时)

内容:编写一个过滤器审计用户对资源的访问;编写一个过滤器改变请求编码。

要求:了解过滤器的作用,掌握过滤器的开发与部署的步骤,了解过滤器链。

16)实验十六:Web应用安全机制(2学时)

内容:练习基于表单的验证方法。

要求:了解Web安全的概念的作用,掌握验证机制,掌握声明式和程序式的Web应用安全。


四、本课程与其它课程的联系与分工

本课程的先修课程:Java程序设计基础

本课程的后修课程:Java EE企业级开发

  

五、对学生能力培养的要求

通过本课程的教学,使学生在掌握Java Web开发技术理论知识的基础上,具有开发简单的Web应用或网页交互程序设计的能力,为社会培养高素质的软件设计人才。

  

六、课程学时分配

总学时48,其中讲课16学时,上机 32学时。课程主要内容和学时分配见课程学时分配表。


程学时分配表

教学环节

时数

课程内容

讲课

上机

实验

习题及讨论

小计

Web应用概述

1

2



3

Servlet技术模型

1

2



3

Servlet容器模型

1

2



3

会话管理

1

2



3

JSP技术模型

3

6



9

Web组件重用与JavaBeans

1

2



3

JDBC数据库访问

2

4



6

使用表达式语言

1

2



3

自定义标签的开发

1

2



3

JSTL与标签开发

1

2



3

Web事件处理与过滤器

1

2



3

Web应用的安全性

1

2



3

SSH框架介绍

1

2



3

总计

16

32



48


七、主要教学方法

采用理论讲解与多媒体演示相结合的教学方法,充分重视实践性教学环节,注重理论与实验相结合。在实践环节中加强上机编程操作,巩固学生所学的Java Web理论知识,培养学生的编程能力,使学生能够利用Java Web设计技术的方法完成简单的项目设计与开发,能够编写基于MVC模式的Java Web应用。


八、建议教材和教学参考书目

1.教材

[1]Java Web编程技术(第2版)》,沈泽刚,秦玉平,清华大学出版社,2014

2.主要参考书

[1]Java Web程序设计》,郭克华,清华大学出版社,2011

[2]Java Web开发教程——入门与提高篇(JSP+Servlet》,李绪成,闫海珍,清华大学出版社,2009

[3]Java Web开发教程(第2版),孙霞,清华大学出版社,2012

[4]Java Web开发教程》,李侃,清华大学出版社,2012

[5]Java Web开发基础——从ServletJSP》,王斐,清华大学出版社,2014

  

九、课程考核

本课程采用闭卷考试方式,总评成绩由平时成绩和期末成绩组成,无期中考试。平时成绩占总评的40%,期末成绩占总评的60%。平时成绩从作业、上课出勤率、上机等几方面进行考核。

  

十、说明

  

    执笔人:卞璐审核人:赵航教学院长(主任):王芳

  

  编写完成时间:

2015919