2306ZB 第三章 Servlet+mvc+三层架构

Servlet+mvc+三层架构

      • 一、Servlet
          • 1.概念
          • 2.使用步骤
      • 二. Servlet生命周期
      • 三、MVC模式和三层架构
          • 1. MVC 模式
          • 2. 三层架构
          • 3. MVC模式和三层架构

一、Servlet

1.概念

Servlet 是java提供的一门动态web资源开发技术
2306ZB 第三章 Servlet+mvc+三层架构_第1张图片

2.使用步骤

方式1-通过配置xml方式

2306ZB 第三章 Servlet+mvc+三层架构_第2张图片

public class ServletDemo1 extends javax.servlet.http.HttpServlet {
    @Override
    public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
        System.out.println("Hello ServletDemo1");
    }
}

配置xml


    <servlet>

        <servlet-name>demo1servlet-name>

        <servlet-class>cn.tedu.servlet.ServletDemo1servlet-class>
    servlet>

    <servlet-mapping>
        <servlet-name>demo1servlet-name>

        <url-pattern>/demo1url-pattern>
    servlet-mapping>

方式2- 使用注解(使用了注解就不需要哦配置xml了,注解中的参数就相当于xml文件中url-pattern)

@WebServlet("/demo2")
public class ServletDemo2 extends HttpServlet {
    @Override
    public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
        System.out.println("hello,demo2~~~");;
    }

二. Servlet生命周期

Servlet运行在Servlet容器(Web服务器中)中,生命周期由容器管理,分为4个阶段
1.加载和实例化:默认情况下,当servlet第一次被访问的时候,由容器创建Servlet对象;
2. 初始化:在Servlet实例化之后,容器将调用Servlet中init()方法初始化这个对象,完成一些如加载配置文件,创建链接等初始化工作,该方法只调用一次
3. 请求处理:每次请求Servlet时,Servlet容器都会调用Servlet的service()方法
4. 终止服务:当需要是释放内存的时候或者容器关闭的时候,会调用destory()方法

@WebServlet(urlPatterns = "/demo3",loadOnStartup=1)
public class ServletDemo3 extends HttpServlet {
    @Override
    /**
     * 初始化方法
     * 调用时机:默认情况下,servlet被访问时调用一次
     *          属性: loadOnStartup=1 修改调用时机
     *          负整数:第一次被访问时创建的Servlet对象
     *          0或正整数,服务器启动是穿件Servlet对象
     * 调用次数:1次
     */
    public void init() throws ServletException {
        System.out.println("init~~~");
    }

    @Override
    /**
     * 提供服务
     * 调用时机:每一次访问servlet时调用
     * 调用次数:多次
     */
    public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
        System.out.println("hello,demo2~~~");;
    }

    /**
     * 销毁方法:
     * 调用时机:内存释放或者服务器关闭的时候,servlet对象会被销毁
     * 调用次数:1次
     */
    @Override
    public void destroy() {
        System.out.println("destroy~~~");
    }
}

三、MVC模式和三层架构

1. MVC 模式

2306ZB 第三章 Servlet+mvc+三层架构_第3张图片

2. 三层架构

2306ZB 第三章 Servlet+mvc+三层架构_第4张图片
2306ZB 第三章 Servlet+mvc+三层架构_第5张图片

3. MVC模式和三层架构

2306ZB 第三章 Servlet+mvc+三层架构_第6张图片

你可能感兴趣的:(JAVAWEB应用开发,servlet,mvc,架构)