第3章 Servlet基础.docx

上传人:b****5 文档编号:3198183 上传时间:2022-11-20 格式:DOCX 页数:13 大小:305.63KB
下载 相关 举报
第3章 Servlet基础.docx_第1页
第1页 / 共13页
第3章 Servlet基础.docx_第2页
第2页 / 共13页
第3章 Servlet基础.docx_第3页
第3页 / 共13页
第3章 Servlet基础.docx_第4页
第4页 / 共13页
第3章 Servlet基础.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

第3章 Servlet基础.docx

《第3章 Servlet基础.docx》由会员分享,可在线阅读,更多相关《第3章 Servlet基础.docx(13页珍藏版)》请在冰豆网上搜索。

第3章 Servlet基础.docx

第3章Servlet基础

第3章补充案例

案例3-1实现第一个Servlet程序

一、案例描述

1、考核知识点

名称:

实现第一个Servlet程序

编号:

028003003

2、练习目标

Ø掌握实际开发中Servlet程序的基本实现和使用。

3、需求分析

由于大多数Web应用都是通过HTTP协议和客户端进行交互,且在实际开发servlet中多是编写基于HTTP协议请求的servlet,在Servlet接口中,专门提供了一个抽象类javax.servlet.http.HttpServlet,它是GenericServlet的子类(GenericServlet是Servlet接口的实现类),专门用于创建应用于HTTP协议的Servlet。

为了读者可以更好地了解实际开发中的servle程序实现,本案例将演示如何编写基于HTTP协议请求的servlet。

4、设计思路(实现原理)

1)创建ServletDemo1类继承Httpservlet类,

2)在ServletDemo1中重写开发常用的doGet()方法和doPost()方法并完成处理操作

3)在web.xml中配置初始化参数和类的映射

4)通过浏览器访问ServletDemo1,展现页面servlet处理响应信息。

二、案例实现

编写ServletDemo1,其代码如下:

publicclassServletDemo1extendsHttpServlet{

@Override

protectedvoiddoGet(HttpServletRequestreq,HttpServletResponseresp)

throwsServletException,IOException{

//通过HttpServletResponse对象设置页面响应编码格式

resp.setContentType("text/html;charset=UTF-8");

//得到输出流PrinterWriter对象,Servlet使用输出流来产生响应

PrintWriterprintWriter=resp.getWriter();

//通过PrintWriter对象向页面打印信息

printWriter.write("实现第一个servlet程序");

}

@Override

protectedvoiddoPost(HttpServletRequestreq,HttpServletResponseresp)

throwsServletException,IOException{

doGet(req,resp);

}

}

配置web.xml文件:

ServletDemo1

cn.heima.chapter3.ServletDemo1

ServletDemo1

/ServletDemo1

启动Tomcat服务器,在地址栏中输入http:

//localhost:

8080/chapter03/ServletDemo1,浏览器显示的结果如下图所示:

三、案例总结

实现Servlet程序的步骤:

1)编写一个类继承HttpServlet类(实际开发多数是基于HTTTP协议请求的);

2)覆盖HttpServlet的部分方法,例如,覆盖doGet()或doPost()方法;

3)获取HTTP请求信息。

通过HttpServletRequest对象来检索HTML表单所提交的数据或URL上的查询字符串;

4)生成HTTP响应结果。

通过HttpServletResponse对象生成响应结果,它有一个getWriter()方法,该方法返回一个PrintWriter对象,然后通过write()方法写出响应信息。

注意:

在使用response.getWrite()方法之前必须使用resp.setContentType("text/html;charset=UTF-8");设置响应信息的编码格式,否者页面会出现中文乱码。

案例3-2HttpServlet

一、案例描述

1、考核知识点

名称:

HttpServlet

编号:

028003005

2、练习目标

Ø掌握HttpServlet的doGet()方法和doPost()方法

3、需求分析

由于大多数Web应用都是通过HTTP协议和客户端进行交互,因此,在Servlet接口中,提供了

一个抽象类javax.servlet.http.HttpServlet,它是GenericServlet的子类,专门用于创建应用于HTTP协议的Servlet。

为了读者可以更好地了解HttpServlet,本案例将演示重写HttpServlet中的doGet()方法和doPost()方法打印出九九乘法表。

4、设计思路(实现原理)

查看HttpServlet源代码的service()方法,在方法中可以看到get请求调用doGet()方法,post请求调用doPost()方法,那么就可以直接重写doGet()和doPost()不需要重写service()方法了。

1)编写ServletDemo2类,在doGet()方法和doPost()方法中用双重for循环打印九九乘法表

2)配置web.xml文件

3)编写get.html页面,设置表单提交方式为get,表单页面使用input标签配置一个按钮,单击按钮可以get方式访问ServletDemo2类

4)编写post.html页面,设置表单提交方式为post,表单页面使用input标签配置一个按钮,单击按钮可以post方式访问到ServletDemo2类

5)通过浏览器分别访问get.html和post.html页面,单击其页面上的按钮,对ServletDemo2进行访问

二、案例实现

编写ServletDemo2,其代码如下:

publicclassServletDemo2extendsHttpServlet{

protectedvoiddoGet(HttpServletRequestreq,HttpServletResponseresp)

throwsServletException,IOException{

resp.setContentType("text/html;charset=UTF-8");

resp.getWriter().print("get提交方式
");

for(inti=1;i<=9;i++){

for(intj=1;j<=i;j++){

resp.getWriter().print(j+"*"+i+"="+j*i+"");

}

resp.getWriter().print("
");

}

}

protectedvoiddoPost(HttpServletRequestreq,HttpServletResponseresp)

throwsServletException,IOException{

resp.setContentType("text/html;charset=UTF-8");

resp.getWriter().print("post提交方式
");

for(inti=1;i<=9;i++){

for(intj=1;j<=i;j++){

resp.getWriter().print(j+"*"+i+"="+j*i+"");

}

resp.getWriter().print("
");

}

}

}

配置web.xml文件:

ServletDemo2

ServletDemo2

cn.itcast.chapter03.servlet.ServletDemo2

ServletDemo2

/ServletDemo2

编写get.html文件:

编写post.html文件:

启动Tomcat服务器,在地址栏中输入http:

//localhost:

8080/chapter03/get.html,浏览器显示的结果如下图所示:

单击提交按钮,显示的结果如下图所示:

在地址栏中输入http:

//localhost:

8080/chapter03/post.html,浏览器显示的结果如下图所示:

单击提交按钮,显示的结果如下图所示:

三、案例总结

1.创建HttpServlet的步骤

1)扩展HttpServlet抽象类;

2)覆盖HttpServlet的部分方法,例如,覆盖doGet()或doPost()方法;

3)获取HTTP请求信息。

通过HttpServletRequest对象来检索HTML表单所提交的数据或URL上的查询字符串;

4)生成HTTP响应结果。

通过HttpServletResponse对象生成响应结果,它有一个getWriter()方法,该方法返回一个PrintWriter对象。

2.HttpServlet主要有两大功能,第一是根据用户请求方式的不同,定义相应的doXxx()方法处理用户请求,例如,与GET请求方式对应的doGet()方法,与POST请求方式对应的doPost()方法。

第二是通过service()方法将HTTP请求和响应分别转为HttpServletRequest和HttpServletResponse类型的对象。

需要注意的是,由于HttpServlet类在重写的service()方法中,为每一种HTTP请求方式都定义了对应的doXxx()方法,因此,当定义的类继承HttpServlet后,只需根据请求方式,重写对应的doXxx()方法即可,而不需要重写service()方法。

案例3-3用ServletConfig对象读取配置文件

一、案例描述

1、考核知识点

名称:

ServletConfig接口

编号:

028003008

2、练习

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1