Servlet基本结构

 下面的代码显示了一个简单Servlet的基本结构。该Servlet处理的 是GET请求,所谓的GET请求,如果你不熟悉HTTP,可以把它看成是当用户在浏览器地址栏输入URL、点击Web页面中的链接、提交没有指定 METHOD的表单时浏览器所发出的请求。Servlet也可以很方便地处理POST请求。POST请求是提交那些指定了METHOD="POST"的表 单时所发出的请求,具体请参见稍后几节的讨论。

  import java.io.*;
  import javax.servlet.*;
  import javax.servlet.http.*;
  public class SomeServlet extends HttpServlet {
  public void doGet(HttpServletRequest request,
  HttpServletResponse response)
  throws ServletException, IOException {
  // 使用"request"读取和请求有关的信息(比如Cookies)
  // 和表单数据 // 使用"response"指定HTTP应答状态代码和应答头
  // (比如指定内容类型,设置Cookie)
  PrintWriter out = response.getWriter();
  // 使用 "out"把应答内容发送到浏览器 }}   

   如果某个类要成为Servlet,则它应该从HttpServlet 继承,根据数据是通过GET还是POST发送,覆盖doGet、doPost方法之一或全部。doGet和doPost方法都有两个参数,分别为 HttpServletRequest 类型和HttpServletResponse 类型。HttpServletRequest提供访问有关请求的信息的方法,例如表单数据、HTTP请求头等等。HttpServletResponse 除了提供用于指定HTTP应答状态(200,404等)、应答头(Content-Type,Set-Cookie等)的方法之外,最重要的是它提供了一 个用于向客户端发送数据的PrintWriter 。对于简单的Servlet来说,它的大部分工作是通过println语句生成向客户端发送的页面。   

  注意doGet和doPost抛出两个异常,因此你必须在声明中包含它们。另外,你还必须导入java.io包(要用到 PrintWriter等类)、javax.servlet包(要用到HttpServlet等类)以及javax.servlet.http包(要用到 HttpServletRequest类和HttpServletResponse类)。
  
  最后,doGet和doPost这两个方法是由service方法调用的,有时你可能需要直接覆盖service方法,比如Servlet要处理GET和POST两种请求时。 

Servlet是Java Web应用的核心组件之一,它是一个Java类,能够在服务器端执行客户请求。Servlet基本结构主要包括以下几个部分: 1. **`Servlet类`**:这是核心部分,需要实现javax.servlet.Servlet接口或继承HttpServlet类。通常会在类中定义doGet()和doPost()等方法来处理HTTP请求。 ```java public class MyServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 处理GET请求的代码 } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 处理POST请求的代码 } } ``` 2. **`web.xml`**:部署描述符文件,用于配置Servlet、URL映射、初始化参数等内容。例如,添加一个Servlet的配置会类似下面这样: ```xml <servlet> <servlet-name>MyServlet</servlet-name> <servlet-class>com.example.MyServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>MyServlet</servlet-name> <url-pattern>/myEndpoint</url-pattern> </servlet-mapping> ``` - `servlet-name`:给Servlet命名。 - `servlet-class`:指定Servlet的实际类路径。 - `url-pattern`:定义了客户端访问此Servlet的URL模式。 3. **部署到Web容器**:将`.jar`包或包含`web.xml`的目录部署到Tomcat、Jetty、WebLogic或其他支持Servlet的Web服务器上,然后通过浏览器访问URL,如`http://localhost:8080/myApp/myEndpoint`,Servlet就会被触发并执行相应的业务逻辑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值