码迷,mamicode.com
首页 > 其他好文 > 详细

2阶——Servlet 与 服务的协议

时间:2020-05-19 14:13:47      阅读:47      评论:0      收藏:0      [点我收藏+]

标签:class   完整   支持   javaee   -o   xsd   art   row   type   

1创建一个简单的servlet(servlet3.0开始支持注解配置

      1创建一个javaee项目

       2定义一个类,实现Httpservlet接口

public class ServletDemo01 extends HttpServlet {
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8"); // 处理响应乱码问题:字节流需getBytes("UTF-8")

        response.getWriter().write("hello servlet");
        // str = new String(str.getBytes("ISO-8859-1"), "UTF-8");   // 处理get请求乱码问题
    }

    protected void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {
        doGet(request, response); // 主要加这一句
    }

}

       3实现接口中的抽象类

       4在web.xml文件中配置servlet

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <servlet>
        <servlet-name>ServletDemo01</servlet-name>    <!--名字可以自定义 -->
        <servlet-class>cn.servlet1.gsj.ServletDemo01</servlet-class> <!--写自己编写的那个servlet程序的完整路径-->
     <load-on-startup>1</load-on-startup> <!--提前创建servlet-->
    </servlet>
    <servlet-mapping>
        <servlet-name>ServletDemo01</servlet-name>
        <url-pattern>/*</url-pattern>
    </servlet-mapping>
</web-app>

 

2 servlet的生命周期

servlet存在线程安全问题,解决方式是尽量不要定义成员变量。如果需要定义那么不要为定义的成员变量赋值!

技术图片

 

 

 

3 Servlet的体系结构

 

 

 技术图片

 

 

 

 

  

技术图片

技术图片

 

2阶——Servlet 与 服务的协议

标签:class   完整   支持   javaee   -o   xsd   art   row   type   

原文地址:https://www.cnblogs.com/gaoSJ/p/12916598.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!