Servlet的编写方法

Servlet架构与生命周期

A.Servlet的体系结构

Servlet(接口)下有1个抽象类:GenericServlet(抽象类),他也有一个子类:HttpServlet(抽象类)

        Servlet接口中主要有3个方法:

            (1).init(ServletConfig config);初始化

            (2).void service(ServletRequest request, ServletRespond respond);处理业务逻辑

            (3).void destory();销毁

            (4).ServletConfig getServletConfig();获取当前Servlet的配置对象

        HttpServlet方法对service方法进行实现,强转参数,并调用了重载的service方法,

        重载的service方法获取请求的方式,根据请求的方式不同,调用相应的doXxx方法。

         doPost和doGet方法是HttpServlet中的实现的方法

B.Servlet的生命周期

         (1)初始化:Servlet在第一次初始化的时候执行一次,由服务器执行,且只执行一次

         (2)service方法:由服务器执行,请求一次,执行一次

         (3)destory方法:服务器执行,只执行一次,当Servlet被移除或者服务器正常关闭的时候

C.Servlet本质上是一个接口,封装在tomcat的jar包中,编写一个servlet,主要有以下几步:

1.编写一个类,该类需要继承HttpServlet类,并且需要重写doGet和doPost方法

2.编写配置文件web.xml,主要有以下两个方面

   (1)

   <servlet>
     <servlet-name>需要自己给要访问的servlet起一个名字<servlet-name>
     <servlet-class>需要将要访问的servlet的全限定名写入,以便和自己起的名字能够对应</servlet-class>
   </servlet>
   (2)绑定路径
   <servlet-mapping>
     <servlet-name>需要与之前<servlet>中自己起的名字相同<servlet-name>
     <url-parttern>自己写一个路径,供浏览器访问时用,这里路径默认从项目名之后开始</url-pattern>
   <servlet-mapping>
在servlet端处理信息

1.接收参数:String value = request对象.getParameter("key");

2.回写参数:respond对象.getWriter().print("写入到浏览器端的内容");

   在回写参数的时候,为了防止出现中文的乱码,需要在回写前加入一条语句:

    respond对象.setContentType("text/html;charset=utf-8");



### 如何编写Servlet教程 #### 创建Servlet类 为了构建一个简单的Servlet程序,首先需要创建一个Java类并继承`HttpServlet`抽象类。此类应覆盖`doGet()`或`doPost()`方法来处理HTTP GET和POST请求。 ```java import javax.servlet.*; import javax.servlet.http.*; import java.io.IOException; public class MyServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 设置响应内容类型 response.setContentType("text/html"); // 获取输出流对象 PrintWriter out = response.getWriter(); // 输出HTML到浏览器端 out.println("<html><body>"); out.println("<h1>Hello from Servlet!</h1>"); out.println("</body></html>"); } } ``` 此代码片段展示了如何定义一个基本的Servlet类[^1]。 #### 配置Servlet映射关系 为了让Web容器知道何时调用该Servlet以及它应该监听哪个URL路径下的请求,在部署描述符(web.xml)中需指定<servlet>元素及其对应的<servlet-mapping>元素: ```xml <web-app> <servlet> <servlet-name>MyServlet</servlet-name> <servlet-class>com.example.MyServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>MyServlet</servlet-name> <url-pattern>/myservlet</url-pattern> </servlet-mapping> </web-app> ``` 上述XML配置说明了当接收到针对`/myservlet` URL模式的请求时,将由名为`MyServlet`的服务实例负责处理这些请求[^2]。 通过以上两步操作即可完成一个简单Servlet应用的搭建工作。这只是一个入门级的例子;实际项目可能会更加复杂,涉及到更多功能特性如会话管理、过滤器链等高级话题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值