JavaWeb——MVC三层架构,过滤器

MVC三层架构,过滤器

  • MVC三层架构
  • Filter(过滤器)

MVC三层架构

含义
1.MVC是Model(模型) View(视图) Controller(控制器)的缩写,是一种软件设计规范。
2.是将业务逻辑,数据,显示分离的方法来组织代码。
3.MVC主要作用是降低了视图与业务逻辑间的双向耦合
4.MVC不是一种设计模式,而是一种架构模式。不同的MVC之间存在差异。JavaWeb——MVC三层架构,过滤器_第1张图片

Model
1.业务处理(Service)
2.数据持久层(Dao):CRUD(增删改查)

View
1.展示数据
2.提供链接发起Servlet请求

Controller
1.接受用户的请求
2.交给业务层(Model)处理对应的代码
3.控制视图的跳转

最经典的MVC就是jsp + servlet + javaBean模式。

Filter(过滤器)

作用:用来过滤网站的数据 ,如处理中文乱码问题,登录验证,打王者时过滤不文明用语等等。

JavaWeb——MVC三层架构,过滤器_第2张图片

实现

注意:不要导错Filter的包,import javax.servlet.*;

package com.dz.Filter;
import javax.servlet.*;
import java.io.IOException;
public class filter01 implements Filter {
    public void init(FilterConfig filterConfig) throws ServletException {
        //服务器已启动,过滤器就已经初始化了
        System.out.println("filter初始化");
    }

    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
         servletRequest.setCharacterEncoding("utf-8");
         servletResponse.setCharacterEncoding("utf-8");
         servletResponse.setContentType("text/html;charset=utf-8");

        System.out.println("filter执行前...");
        //不只有一个过滤器,为了让其他过滤器也能过滤,必须加上这行代码
        filterChain.doFilter(servletRequest,servletResponse);
        System.out.println("filter执行后...");
    }

    public void destroy() {
        System.out.println("filter销毁");
    }
}

在wen.xml注册

 <filter>
  <filter-name>filterfilter-name>
  <filter-class>com.dz.Filter.filter01filter-class>
filter>
<filter-mapping>
  <filter-name>filterfilter-name>
  <url-pattern>/servlet/*url-pattern>
filter-mapping>

你可能感兴趣的:(javaWeb,过滤器,乱码,filter,mvc)