zoukankan      html  css  js  c++  java
  • spring MVC 学习(四)---拦截器,视图解析器

    1.接口HandlerInterceptor

    该接口包含3个方法,分别是preHandle,postHandle,afterCompletion,分别代表着执行前,执行后,执行完成要执行的方法,其中proHandle如果返回false代表中断后续动作。

    //在执行目标程序之前执行,dang放回false就不再向后执行,但还会执行afterCompletion
        public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
                throws Exception {
            // TODO Auto-generated method stub
            return false;
        }
        //在执行目标程序之后执行
        public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
                ModelAndView modelAndView) throws Exception {
            // TODO Auto-generated method stub
    
        }
        //在整个请求处理完后执行
        public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)
                throws Exception {
            // TODO Auto-generated method stub
    
        }

    2.视图解析器

    官方文档给出了常用的视图解析器:

    image

    其中我们常用的可能就是上面红框中的,不过在一般在使用的是jsp的话,使用第一个红框中的就可以瞒住绝大部分需求了。

    InternalResourceViewResolver一般的配置文件如下spring-mvc.xml

    <bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
        <property name="prefix" value="/WEB-INF/jsp/"/>
        <property name="suffix" value=".jsp"/>
    </bean>

    由于InternalResourceViewResolver继承了UrlBasedViewResolver,在UrlBasedViewResolver中有属性contentType,该属性用来设置视图中的context type,一般建议加上:

    <property name="contentType" value="text/html;charset=utf-8" />

     

  • 相关阅读:
    vue.js引用出错-script代码块放在head和body中的区别
    Notes:一致性哈希算法
    TCP为什么不是两次握手而是三次?
    windows上SSH服务连接远程主机失败
    Centos安装vsftp服务
    使用JavaMail实现发送邮件功能
    在进行javaIO写文件操作后文件内容为空的情况
    Struts2---动态方法调用
    golang的吐槽
    select函数源码阅读
  • 原文地址:https://www.cnblogs.com/haoke/p/5005239.html
Copyright © 2011-2022 走看看