数据库、jsp页面乱码统一解决的办法?
请问怎么有效的统一解决这个乱码问题,听室友说可以每个语言写一个配置文件,jsp页面直接用utf8编码方式
哪位高手能系统的给出一个解决方案,给大家参考一下
问题点数:10、回复次数:17Top
1 楼rickhunterchen(千山鸟飞绝)回复于 2006-03-08 09:40:02 得分 2
Web开发乱码问题解决可以看看这里:
http://www.blogjava.net/rickhunter/articles/33571.html
数据库的编码在实际开发中一般碰到的比较少。
oracle和sql server都支持中文字符,mysql5.0以上的版本也支持中文。所以一般数据库的编码出现问题并不多。
Top
2 楼lllllllllluoyi(罗毅)回复于 2006-03-08 09:41:50 得分 2
我想只能为每个页面设置为gb2312编码。一劳永逸好像不行吧。Top
3 楼bluelily22(丁丁)回复于 2006-03-08 09:57:57 得分 2
全部用utf-8编码Top
4 楼believefym(feng)回复于 2006-03-08 14:41:07 得分 0
加了过滤器,用了utf8,感觉还是有问题,不知道还有没有系统的文章Top
5 楼believefym(feng)回复于 2006-03-08 15:25:02 得分 0
我觉得如果要给每个jsp制定编码格式为gb2312,感觉通用性太差,没有国际化,所以想寻找一种通用的解决方案,jsp编码格式继续采用utf8,但是可以在不同的Locale下都不为乱码,不知道行不行?Top
6 楼zoeg(沉香)回复于 2006-03-08 15:37:07 得分 2
jsp加个过滤器基本能搞定
数据库的话,我有一个组件,用在项目或者任意使用JDBC的程序中,并且不需要在程序中更改任何代码就能解决数据库乱码问题。Top
7 楼swingaway(zpf)回复于 2006-03-08 15:37:18 得分 2
<%!
public String getStr(String str){
if (str==null){
str="";
}
try{
byte[] temp_t=str.getBytes("ISO-8859-1");
String temp=new String(temp_t);
return temp;
}
catch(Exception e){}
return "NULL";
}
%>
<%
String str=getStr(request.getParameter("parameter"));
%>
还比较好用Top
8 楼believefym(feng)回复于 2006-03-09 12:14:18 得分 0
怎样解决国际化问题呢Top
9 楼CristinNa(土匪)回复于 2006-03-09 13:31:52 得分 0
在jsp页面上使用UTF-8字符编码格式,另外在配置过虑器就ok啦Top
10 楼believefym(feng)回复于 2006-03-09 15:27:32 得分 0
在jsp页面上使用UTF-8字符编码格式,另外在配置过虑器就ok啦
-----------------------------------------
我试过这样做,utf8编码,过滤器,但是有些乱码,有些正常,不知何故Top
11 楼believefym(feng)回复于 2006-03-09 21:20:31 得分 0
upTop
12 楼dext(德克斯特)回复于 2006-03-09 21:37:16 得分 0
从头做的话,全部使用Unicode就可以了。Top
13 楼believefym(feng)回复于 2006-03-09 21:45:00 得分 0
utf8乱码怎么办
国际化是怎么做到的Top
14 楼believefym(feng)回复于 2006-03-10 14:41:04 得分 0
upTop
15 楼hhlovels(阿虎)回复于 2006-03-10 21:12:00 得分 0
在FORM里面写个方法可以代替 SET方法
具体的我忘了Top
16 楼flashicp(flashicp)回复于 2006-03-11 16:16:57 得分 0
配置文件设置下就可以了Top
17 楼chinese5_9(中国人)回复于 2006-03-14 15:17:21 得分 0
定义一个java类方法
每个页面都调用这个方法
package 包名;
public class 类名 {
//转换字符转换成iso-8859-1编码
public static String toStr(String str) {
String string = "";
try {
string = new String(str.getBytes("iso-8859-1"));
} catch (Exception e) {
return "";
}
return string;
}
}
试试
也许对你有用Top




