struct中,乱码的问题应该怎样解决?

快乐妈妈网 2005-01-12 01:06:42
struct中,乱码的问题应该怎样解决?因为从数据库读出数据后,放到bean中,然后显示到页面中,编码的转换应在那一层进行处理,我在ACTIONS中处理,但是不行!请各位大侠帮帮忙!
...全文
132 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
qhc 2005-01-13
  • 打赏
  • 举报
回复
JSP页面中的charset的字符集设置必须与你在Action中转换后的字符集一致,
否则肯定是乱码,比如在Action中若转换成GBK则JSP中的charset也要设置成GBK,
我的转换字符集的方法是
public static String toChinese(String str){
String tostr;

try{
//我的数据库字符集是iso-1(即ISO-8859-1)
tostr=new String(str.getBytes("ISO-8859-1"),"GBK");
}catch(Exception e){
tostr=str;
}

return tostr;
}
JSP页面中的设置是
<%@ page contentType="text/html;charset=GBK" language="java" %>
希望上述对你有帮助.
快乐妈妈网 2005-01-12
  • 打赏
  • 举报
回复
因为在页面显示时,用的是标签,<bean:write name="cling" property="id" scop="page"/>,怎么添加这个转换呀,以前用JSP时,我编了一个方法,直接用就可以了,现在用structs就不知道如何做了,在action里从数据库读出时我就做了转换,但是没有效果,还是乱码呀!不知道如何解决!
sunny_china 2005-01-12
  • 打赏
  • 举报
回复
new String(request.getParameter("name").trim().getBytes("ISO8859_1"),"gb2312")


这个行不?还有一个是用一个中间类转换!我没找到你先用这个试一下吧!
jiangx123 2005-01-12
  • 打赏
  • 举报
回复
页面gbk > 过滤器filter > ActionServlet
或者直接继承重写ActionServlet的构造器
qhc 2005-01-12
  • 打赏
  • 举报
回复
我的方法如下,数据库是Sybase,
将数据库字符集设置为iso_1,
在业务层存入数据时转换为iso_1,
在业务层取出数据后转换为GBK,
JSP页面中charset设置为GBK
miaoliujun 2005-01-12
  • 打赏
  • 举报
回复
一般是这样的
页面--》逻辑代码处理--》数据库
在这两个交互的地方处理就可以了
从数据库读出来的数据,读出来放到bean的时候就要转换一下,这样以后可以处理,然后放到页面上需要处理的话也要处理一下
快乐妈妈网 2005-01-12
  • 打赏
  • 举报
回复
怎么加呀,我可不会,请大侠说明白一点吧!谢谢!
vgvg 2005-01-12
  • 打赏
  • 举报
回复
web.xml
中添加一个字符过滤功能.

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧