zoukankan      html  css  js  c++  java
  • 服务器学习笔记之servlet

    初衷

    想学习下服务器这边的知识,制定了一条学习路线:java8--->servlet--->springMvc--->springBoot--->springCloud。在此当做学习笔记。

    本文开发环境是IDEA正式版。

    概念

    servlet本质是一个java接口,这个接口定义了处理网络请求的一组规范或需求描述。

    servlet容器将请求分发给servlet,由特定的servlet处理请求。

    常见的servlet容器如Tomact。

    主要方法

    • init() :初始化servlet
    • service() :处理客户端请求
    • destroy() :终止servlet(servlet由JVM进行垃圾回收)

    servlet实例

    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.IOException;
    import java.io.PrintWriter;
    
    @WebServlet("/MyServlet")
    public class MyServlet extends HttpServlet {
    
        private String message;
    
        public void init() throws ServletException {
            message="Hello World";
        }
    
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            resp.setContentType("text/html;charset=UTF-8");
            PrintWriter writer=resp.getWriter();
            writer.println("<h2 style='color:red'>"+message+"</h2>");
        }
    
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            doGet(req,resp);
        }
    
        @Override
        public void destroy() {
            super.destroy();
        }
    }

    说明:

    • 我们的api中已经有两个实现好servlet接口的类,分别是HttpServlet和GenericServlet,通常自己只需要继承HttpServlet类即可。
    • @WebServlet注解用来标注URL和servlet的映射。(还有一种配置方法是在web.xml中配置servlet,请看下面说明)
    • PrinterWriter是字符类型的打印输出流,继承于Writer。

    在web.xml中配置servlet

    <!--配置servlet-->
      <servlet>
        <servlet-name>MyServlet</servlet-name>
        <servlet-class>com.gree.servlet.MyServlet</servlet-class>
      </servlet>
      
      <servlet-mapping>
        <servlet-name>MyServlet</servlet-name>
        <url-pattern>/MyServlet</url-pattern>
      </servlet-mapping>

    说明:

    • servlet-name:要注册的servlet名称。
    • servlet-class:指向要注册的servlet类的地址,包名加类名。
    • url-pattern:配置注册的servlet组件的访问路径。
    • 注意上下两个servlet-name要一致。

    以上是一个servlet最简单的例子,但仅仅是关于servlet。

    贴上两个优秀的手把手建web项目指导帖,大家可以参考下,人家写的很详细我就不重复了。有不懂的问题欢迎私信,一起学习啊~

    idea搭建web工程帖:https://www.cnblogs.com/Sinte-Beuve/p/5730553.html

    web工程详细配置帖:https://www.cnblogs.com/deng-cc/p/6416332.html

  • 相关阅读:
    logstash收集nginx日志写入kafka
    Logstash收集日志写入Redis
    Nginx反向代理kibana实现认证访问
    logstash收集nginx日志写入kafka1
    201999:渗透测试,基础学习,windows基础命令,笔记
    2019910:渗透测试,基础学习
    中华吸血鬼恶意病毒分析
    磁碟机病毒分析
    利用SQL语句对不同数据库进行高效果分页
    TimeBased Blind SQL Injection with Heavy Queries
  • 原文地址:https://www.cnblogs.com/hongdiandian/p/9146348.html
Copyright © 2011-2022 走看看