目录

  • 1 阶段1模块一Java Web编程准备
    • 1.1 学习导航
    • 1.2 任务一进行系统需求分析与总体设计
    • 1.3 任务二搭建开发环境
    • 1.4 任务三制作静态页面
    • 1.5 任务四部署并运行第一个JSP文件
    • 1.6 模块一课件
    • 1.7 模块一习题
  • 2 阶段1模块二Java Web编程入门
    • 2.1 学习导航
    • 2.2 任务一认识JSP页面组成元素
    • 2.3 任务二认识JSP的内置对象
    • 2.4 任务三使用out对象输出信息
    • 2.5 任务四获取客户端请求数据
    • 2.6 任务五实现页面跳转
    • 2.7 任务六实现访问控制
    • 2.8 任务七制作网页计数器
    • 2.9 模块二 课件
    • 2.10 模块二习题
  • 3 阶段1模块三JavaWeb数据库编程
    • 3.1 学习导航
    • 3.2 任务一使用MySQL
    • 3.3 任务二使用SQL操作数据
    • 3.4 任务三认识连接数据库的步骤
    • 3.5 任务四使用Statement处理数据
    • 3.6 任务五使用PreparedStatement处理数据
    • 3.7 模块三课件
    • 3.8 模块三习题
  • 4 阶段1模块四JavaWeb基础阶段实训
    • 4.1 课件
    • 4.2 IT新闻资讯系统
  • 5 阶段2模块五Java Web应用优化
    • 5.1 学习导航
    • 5.2 任务一认识软件设计分层架构
    • 5.3 任务二使用分层架构实现管理员登录
    • 5.4 模块五课件
    • 5.5 模块五习题
  • 6 阶段2模块六Java Web开发业务应用
    • 6.1 学习导航
    • 6.2 任务一实现页面的分页显示
    • 6.3 任务二使用SmartUpload组件实现文件上传下载
    • 6.4 任务三使用图表组件显示动态数据图表
    • 6.5 模块六课件
    • 6.6 模块六习题
  • 7 阶段2模块七Servlet技术基础
    • 7.1 学习导航
    • 7.2 任务一认识Servlet
    • 7.3 任务二创建并运行一个简单的Servlet
    • 7.4 任务三使用Filter解决中文乱码问题
    • 7.5 模块七课件
    • 7.6 模块七习题
  • 8 阶段2模块八MVC开发模式
    • 8.1 学习导航
    • 8.2 任务一认识MVC模式
    • 8.3 任务二使用MVC模式实现用户登录
    • 8.4 模块八课件
    • 8.5 模块八习题
  • 9 阶段2模块九  Java Web进阶阶段实训
    • 9.1 模块九课件
    • 9.2 在线收藏夹
  • 10 阶段3模块十学生会网站项目开发
    • 10.1 模块十课件
  • 11 实训题库
    • 11.1 网络留言板系统1
    • 11.2 网络留言板系统2
    • 11.3 猜数游戏
    • 11.4 学生成绩查询系统
    • 11.5 场馆管理系统
    • 11.6 物资管理系统
    • 11.7 网络书签
    • 11.8 商品库存系统
    • 11.9 火车车次管理系统
    • 11.10 会议室预定系统
    • 11.11 人员档案管理系统
    • 11.12 新闻资讯系统
任务二创建并运行一个简单的Servlet
  • 1 知识链接
  • 2 任务实现·
  • 3 同步实训

开发Servlet一般按以下步骤进行:

1)编写Servlet,设置访问URL,重写doGet()doPost方法。

2)运行Servlet

【知识链接】

1.创建Servlet

创建Servlet有如下3种方式:

  • 实现Servlet接口。

  • 继承GenericServlet类。

  • 继承HttpServlet类。

创建的Servlet中有两个重要的方法doGet()doPost(),其中doGet()用于处理客户端的GET请求,doPost()用于处理客户端的POST请求。程序员在编写特定功能的Servlet时,需要重写这两个方法。

2Servlet的运行

Servlet的运行比较简单,只需要通过URL就可以实现访问。

3Servlet中数据的获取与响应

Servlet容器在接收客户请求时,除了创建ServletRequest对象用于封装客户的请求信息外,还创建了一个ServletResponse对象,用来封装响应数据,并且同时将这两个对象一并作为参数传递给Servlet

Servlet能够利用ServletRequest对象获取客户端的请求数据,常用如表7-1所示。

7-1  ServletRequest的常用方法

                   

 

方法名称

 
 

方法描述

 
 

Sring  getParameter(String)

 
 

获取请求中传递的参数

 
 

void setCharacterEncoding("GBK")

 
 

设置请求数据的字符编码

 
 

void setAttribute(String,Object)

 
 

在请求中保存名称为name的属性值

 
 

Object getAttribute(String)

 
 

获取名称为name的属性值

 

Servlet利用ServletRequest对象获取客户端的请求数据,经过处理后由ServletResponse对象发送响应数据。ServletResponse常用方法如表7-2所示。

 

7-2  ServletResponse的常用方法

           

 

方法名称

 
 

方法描述

 
 

void sendRedirect("url")

 
 

发送一个临时的重定向响应到客户端,以便客户端访问新的URL

 
 

void setContentType(String)

 
 

设置发送到客户端的响应的内容类型

 

Servlet中页面跳转方式有以下两种:

转发:对应的Servlet代码和JSP代码为:

 

 

request.getRequestDispatcher("JSP页面或Servlet").forward(request,  response);

 

其中request对象为HttpServletRequest类。

转发是在服务器端起作用的,当使用forward()方法时,Servlet容器传递HTTP请求,从当前的ServletJSP到指定的ServletJSP,此过程仍然在request作用范围内。转发后,浏览器的地址栏内容不变。转发可以将数据通过request作用域传递到下一个页面或Servlet

重定向:对应的Servlet代码和JSP代码为:

 

 

response.sendRedirect("JSP页面或Servlet");

 

重定向是在用户的浏览器端工作的,是Servlet对浏览器做出响应后浏览器再次发送一个新请求到指定的页面,重定向后,浏览器的地址栏内容发生变化。重定向无法传递数据。