发表于: 2018-03-28 20:08:02
1 634
今天完成的事情:
由于昨天遇到的问题,了解了 springMVC web.xml 中配置加载顺序:
在web.xml文件中元素的加载顺序与它们在 web.xml 文件中的先后顺序无关。加载的顺序是:context-param->listener -> filter -> servlet ,其中context-param,它用于向 ServletContext 提供键值对,即应用程序上下文信息。我们的 listener, filter 等在初始化时会用到这些上下文中的信息,然而对于某些配置节而言,它们出现的顺序是有先后关联的。这里在补充一下在配置中遇到的一下问题以及解决方式:
在web.xml中定义的spring的配置文件一般有两个:
1、Spring上下文环境的配置文件:applicationContext.xml.
2、SpringMVC配置文件:spring-servlet.xml.
加载顺序是:首先加载Spring上下文环境配置文件,然后加载SpringMVC配置文件,并且如果配置了相同的内容,SpringMVC配置文件会被优先使用。 所以这里需要注意一个问题,一定要注意SpringMVC配置文件内容不要把Spring上下文环境配置文件内容覆盖掉。
在解决昨天的第一个问题:执行更新后中文乱码:
昨天已经将数据库字符集更改为UTF-8,更改之后仍然乱码.,
然后照网上方法,更改tomcat的字符集 :更改tomcat文件夹下/conf/server.xml文件中的
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
/>
更改为
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="UTF-8" useBodyEncodingForURI="true" />
添加了红色字体的内容.
仍然出现乱码的问题
后来在师兄的帮助下在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>utf-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<!-- 这里为什么是/* -->
<url-pattern>/*</url-pattern>
</filter-mapping>
明天计划的事情:(一定要写非常细致的内容)
解决昨天的遗留问题
学一波脚本
遇到的问题:(遇到什么困难,怎么解决的)
------
收获:(通过今天的学习,学到了什么知识)
评论