SpringMVC跳轉到html頁面以及Controller返回html頁面的亂碼問題


一、SpringMVC跳轉到html頁面
  1、自定義視圖解析器:
     public class CustomResourceView extends InternalResourceView {
        @Override
        public boolean checkResource(Locale locale) throws Exception {
             File file=new File(this.getServletContext().getRealPath("/")+getUrl());
              return file.exists(); //判斷頁面是否存在
        }
     }
    2、在dispatcherServlet-config.xml文件中配置視圖解析器:
               <bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
          <property name="viewClass" value="ssm.tools.CustomResourceView"/>
          <property name="prefix" value="/WEB-INF/jsp/"/>
          <property name="suffix" value=".jsp"/>
          <property name="order" value="1"/>
        </bean>
        <bean id="htmlViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
           <property name="viewClass" value="ssm.tools.CustomResourceView"/>
           <property name="prefix" value="/WEB-INF/html/"/>
           <property name="suffix" value=".html"/>
                     <property name="order" value="2"/>
        </bean>
 
二、Controller返回html頁面的亂碼問題: 在web.xml文件中配置字符編碼過濾器
             <filter>
        <filter-name>characterEncodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
           <param-name>encoding</param-name>
           <param-value>UTF8</param-value>
        </init-param>
        <init-param>
           <param-name>forceEncoding</param-name>
           <param-value>false</param-value>
         </init-param>
       </filter>
       <filter-mapping>
          <filter-name>characterEncodingFilter</filter-name>
          <url-pattern>*.html</url-pattern>
       </filter-mapping>
       <filter-mapping>
          <filter-name>characterEncodingFilter</filter-name>
          <url-pattern>*.jsp</url-pattern>
       </filter-mapping>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM