简单Servlet开发

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

简单Servlet开发

一、实验目的:

在本次实验中,我们将利用Eclipse开发并测试几个简单的Servlet程序。学生通过本次实验可以更深入了解、验证Servlet的工作原理,掌握Servlet的开发步骤,从而进一步熟悉Eclipse 开发环境。

二、实验内容指导:

1. Servlet定义

Servlet 是一个用Java 编写的在服务器上运行以处理客户端请求的小程序,具体运行在servlet引擎管理的JVM上;Servlet容器负责servlet和用户的通信以及调用servlet 的方法;servlet和用户的通信采用请求/响应模式;以动态形式扩展Web服务器(Web container)的功能。

Servlet是开发服务器端应用程序的一个很好的选择,Servlet与JSP结合使用,提供更强大的服务器端的功能。

2.Servlet API

Servlet框架核心是javax.servlet.Servlet接口,所有的servlet都必须实现该接口。用户开发自己的servlet类时,必须扩展以下两个类中的一个:GenericServlet类和HttpServlet类。本课程主要讲解、练习基于HTTP协议的Servlet,因此学生开发的Servlet 都需继承HttpServlet类。

如果自定义的Servlet类扩充HttpServlet类,通常不用实现service()方法,因为HttpServlet类已经实现了service方法,该方法的声明形式为:

protected void service(HttpServletRequest req, HttpServletResponse res) throws servletException, IOException;

HttpServlet的service方法首先从HttpServletRequest对象中获取HTTP请求方式的信息,然后再根据请求的方式调用相应的方法。例如,如果请求的方式为GET,那么调用doGet()方法;如果请求的方式为POST,那么调用doPost()方法。

在HttpServlet类中有6个do xxx方法:doPost, doPut, doGet, doDelete, doOptions, doTrace. 当使用不同的HTTP方法请求Servlet时,Servlet会调用相应的do xxx方法。

3.如何开发Servlet组件

创建用户自己的Httpservlet ,通常涉及以下4个步骤

❑扩展Httpservlet抽象类

❑覆盖Httpservlet抽象类的部分方法

❑利用HttpServletRequest获取HTTP请求信息

❑利用HttpServletResponse生成HTTP响应结果

这是一个简单的Servlet实例:

Servlet处理请求的过程

❑用户从客户机将HTTP请求发送给web服务器

❑web服务器将该请求发送给Servlet

❑Servlet处理该请求

❑Servlet将响应发送给web服务器

❑web服务器将响应转发送给客户机

三、实验任务及要求:

1.在Eclipse开发环境中,创建一个名为MyServlet的Java Web Project,并在该工程中通过实现Servlet接口的方式建立一个名为FirstServlet的Servlet,并实现Servlet 接口的5个方法。在负责Servlet生命周期管理的三个方法init(),service()和destroy()中分别在控制台打印三句话,然后将该工程发布到Tomcat上,运行、测试该Servlet,查看控制台运行结果,体会Servlet的运行过程。

建立一个工程,端口是servlet………..

先发布,后开服务器。

新建一个名为MyFirstservlet的Web Project.

Src右击->new->package

右击com.servlet->new->servlet

点击add

添加servlet-javax.servlet接口,点击ok

点击Next

Finish

在destroy(),service(),init()中分别写打印一句话,在控制台输出

在web.xml文件中URL地址改为first,这样方便访问

“/”别忘记。

发布到服务器上并运行服务器

注意:此处的工程名MyFirstservlet我另改成了Ms,因为工程名和servlet名相同就会不能用!!!!!!!此处以下是改过的!

IE里面不显示任何信息,控制台的显示为:

关闭服务器会显示:

2. 在MyServlet工程中利用继承GenericServlet的方式建立名为SecondServlet的Servlet,实现该Servlet的service()方法,在该方法中向客户端浏览器发送一个HTML 文本,在该页面显示欢迎信息,运行、测试并查看结果。

新建一个Servlet,名为MySecongservlet

点击Browser

OK,在.xml文件中改变URL地址

添加以上代码

发布:点击要发布的服务器。点击Redeploy重新发布就可以

开启服务器

打开IE

3.建立一个用户登录页面(login.html),让用户在该页面输入用户名和密码,然后提交用户信息到名为LoginCl的Servlet,该Servlet的创建方法采用继承HttpServlet的方式实现,并在该Servlet的doPost()方法中利用HttpServletRequest对象的getParameter()方法获取用户名和密码信息,并利用HttpServletResponse对象的相应方法把用户信息发送到客户端浏览器显示给用户看。

Form的action是要转到的URL,可是是相对的,也可以是绝对的

提交是submit

重置是……..

类接口

相关文档
最新文档