頁(yè)面都用UTF-8了,而且數(shù)據(jù)庫(kù)鏈接池也做了編碼控制,還是出現(xiàn)了亂碼。不過(guò)剛開(kāi)始用那個(gè)數(shù)據(jù)庫(kù),還沒(méi)有用FILTER都沒(méi)有亂碼。于是我想到是否用個(gè)FILTER試試。
過(guò)程:
1
package org.cotel.Evote.Util;
2
3
import java.io.IOException;
4
import javax.servlet.*;
5
6
public class EncodingFilter implements Filter{
7
private String encoding;
8
public EncodingFilter(){
9
}
10
public void init(FilterConfig filterconfig)
11
throws ServletException{
12
encoding = filterconfig.getInitParameter("encoding");
13
}
14
15
public void doFilter(ServletRequest servletrequest, ServletResponse servletresponse, FilterChain filterchain)
16
throws IOException, ServletException{
17
if(encoding != null && servletrequest.getCharacterEncoding() == null)
18
servletrequest.setCharacterEncoding(encoding);
19
filterchain.doFilter(servletrequest, servletresponse);
20
}
21
public void destroy(){
22
}
23
}
24
25

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

然后將過(guò)濾器添加到web.xml


1

2

3

4

5

6

7

8

9

10

11

12

注意在所有servlet 之前。
遺憾的測(cè)試發(fā)現(xiàn)還是有亂碼。不過(guò)這個(gè)配置是正確的。所以最后數(shù)據(jù)庫(kù)師父說(shuō),數(shù)據(jù)庫(kù)問(wèn)題。他說(shuō)換個(gè)版本就行了。
不過(guò)想想今天做的事情吧,學(xué)會(huì)了連接池配置,filter配置,還能熟練用一個(gè)開(kāi)源的js TREE組件。
不錯(cuò)吧!