MVC三层架构,过滤器及监听器

本文详细介绍了MVC三层架构,包括Model的业务处理和数据持久化,View的数据显示以及Controller的请求处理和视图跳转。同时,讨论了Filter在解决编码问题和登录验证中的作用,以及Listener在监听用户行为上的应用。通过这些组件,可以更好地理解和组织Web应用程序的结构。
摘要由CSDN通过智能技术生成

MVC三层架构

  • Model
    • 业务处理:业务逻辑(事务,安全)
    • 数据化持久层:CUDR(Dao)
  • View
    • 展示数据
    • 提供链接发起Servlet请求(from,img)
  • Controller(Servlet)
    • 接受用户请求(req:请求参数,Session信息)
    • 交给业务层处理对应的代码
    • 控制视图的跳转


Filter

概述:即在web服务器和servlet之间加了一层过滤装置,可用于统一处理中文乱码,登录验证问题,不用再到每个servlet程序中处理。其实现过程跟servlet类似,一些有区别的细节给了注释。

//解决编码问题的过滤器,url设为/*,可以过滤该request子项目下所以请求响应
public class CharEncodingFilter implements Filter {//注意是javax.servlet下的包!!
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
        //初始化,web容器创建时
        System.out.println("开始过滤");
    }

    @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");

        filterChain.doFilter(servletRequest,servletResponse);//该链将请求转发给过滤器链下一个filter , 如果没有filter那就到请求的资源
    }

    @Override
    public void destroy() {
        //销毁,关闭服务器时
        System.out.println("停止过滤");
    }
}

Listener

概述:监听器,用法和过滤器类似,多用于GUI编程。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值