JavaWeb——MVC三层架构,过滤器
MVC三层架构
含义: 1.MVC是Model(模型) View(视图) Controller(控制器)的缩写,是一种软件设计规范。 2.是将业务逻辑,数据,显示分离的方法来组织代码。 3.MVC主要作用是降低了视图与业务逻辑间的双向耦合。 4.MVC不是一种设计模式,而是一种架构模式。不同的MVC之间存在差异。
Model 1.业务处理(Service) 2.数据持久层(Dao):CRUD(增删改查)
View 1.展示数据 2.提供链接发起Servlet请求
Controller 1.接受用户的请求 2.交给业务层(Model)处理对应的代码 3.控制视图的跳转
最经典的MVC就是jsp + servlet + javaBean模式。
Filter(过滤器)
作用:用来过滤网站的数据 ,如处理中文乱码问题,登录验证,打王者时过滤不文明用语等等。
实现
注意:不要导错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>filter</filter-name> <filter-class>com.dz.Filter.filter01</filter-class> </filter> <filter-mapping> <filter-name>filter</filter-name> <url-pattern>/servlet/*</url-pattern> </filter-mapping>
