一.MVC三层架构
MVC 模式代表 Model-View-Controller(模型-视图-控制器) 模式。
这种模式用于应用程序的分层开发。
Model(模型)
- 模型代表一个存取数据的对象,它也可以带有逻辑,在数据变化时更新控制器。
-
- 业务处理 :业务逻辑(Service)
- 数据持久层:CRUD (Dao)
View(视图)
- 展示数据
- 提供链接发起Servlet请求 (a,form,img…)
Controller(控制器)
-
接收用户的请求(req:请求参数、Session信息….)
-
交给业务层处理对应的代码
-
控制视图的跳转
早些年用户直接访问控制层,控制层就可以直接操作数据库;
MVC三层架构示意图
二.过滤器(Filter)
用来过滤网站的数据;
1.Filter开发步骤:
(1)导包,实现Filter接口,重写对应的方法
package com.yl.demo;
import javax.servlet.*;
import java.io.IOException;
public class demo5 implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
//初始化
}
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
}
@Override
public void destroy() {
//销毁
}
}
(2) 编写过滤器
package com.yl.demo;
import javax.servlet.*;
import java.io.IOException;
public class demo5 implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
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("执行前....");
filterChain.doFilter</