二、springmvc前奏-servlet

ssm学习过程,学习过spring ioc,现在来学下springmvc,说到springmvc,他是解决web项目的,这就不得不提到servlet。

什么是servlet

servlet是java编写的服务端程序 (javax.servlet.*)。必须放在容器中才可以运行,比如tomcat/WebLogic。

servlet具有控制器和页面角色,有了jsp和动态页面技术后,servlet主要承担控制器角色。

1.页面角色

   response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
        out.println("hello world,servlet

我是加粗,是一个页面元素

"); out.close();

 2. 控制器角色。model+jsp+servlet 构成 MVC架构模式

3.一次servlet请求过程

第一步:容器先加载Servlet类

第二步:容器实例化Servlet(Servlet无参构造函数执行)

第三步:执行init()方法(在Servlet生命周期中,只执行一次,且在service()方法执行前执行)

第四步:执行service()方法,处理客户请求,doPost()或doGet()

第五步:执行destroy(),销毁线程

servlet生命周期

1.在容器中的每个Servlet原则上只有一个实例

2.每个请求对应一个线程

3.多个线程可作用于同一个Servlet(这是造成Servlet线程不安全的根本原因)

4.每个线程一旦执行完任务,就被销毁或放在线程池中等待回收

 

编写第一个servlet

1.把之前建立的spring项目,改成web项目。 建立webapp/WEB-INF/web.xml

二、springmvc前奏-servlet_第1张图片

 2.打开项目配置,添加web,配置好web.xml路径,以及webapp路径。这样就是一个web项目了。

二、springmvc前奏-servlet_第2张图片

3. New-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(name = "MyServlet2")
public class MyServlet2 extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
     System.out.println("111");
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
        out.println("hello world,servlet");
        out.close();
        System.out.println("22");
    }
}

4.修改web.xml



  
    MyServlet2
    com.xx.MyServlet2
  

  
    MyServlet2
    /MyServlet2
  

        

 5.添加tomcat

二、springmvc前奏-servlet_第3张图片

二、springmvc前奏-servlet_第4张图片

 添加Artifact

二、springmvc前奏-servlet_第5张图片

配置 Application context 

 二、springmvc前奏-servlet_第6张图片

 

 6.启动,完成第一个servlet

二、springmvc前奏-servlet_第7张图片

你可能感兴趣的:(spring#,springmvc#,springboot#)