首页 > 编程知识 正文

解决springmvc访问html乱码

时间:2023-05-05 07:07:47 阅读:226599 作者:1168

<!--中文乱码--><filter> <filter-name>encodingFilter</filter-name> <filter-class>org.springframework.web.filter.粗犷的过客</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param></filter><filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern></filter-mapping>

据说这个filter可以解决前端往后端传数据的中文乱码问题,应该是可以的
但是在需要同时支持跳转jsp和html的时候

<init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value></init-param>

这部分需要去掉,强制编码会导致html在显示的时候出现中文乱码

如何配置可以同时支持jsp和html呢
dispatcher-servlet.xml作如下配置

<!--view multi--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> <property name="prefix" value="/WEB-INF/view/"/> <property name="order" value="0"/> <property name="suffix" value=".jsp"/> </bean> <!--访问html--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> <property name="prefix" value="/WEB-INF/view/"/> <property name="order" value="1"/> <property name="suffix" value=".html"/> </bean>

注意一下:这里order需设置为jsp优先,即order的value更小
web.xml作如下配置

<!--html请求--> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.html</url-pattern> </servlet-mapping>

关于<servlet-name>default</servlet-name> 的解释
参考:
https://blog.csdn.net/hello5orld/article/details/9407905

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。