超级难题。web乱码问题

s74110s 2008-04-19 08:27:43
我的jsp文件中有是用eclipse编辑的。eclipse默认的是UTF-8编码。我在jsp设的是GBK编码。我在整个工程中用了filter进行转换成GBK.我用的是structs1.1加jdbc驱动。现在我在jsp中有一个<html:text>的structs标签。我在action 中取出输入的值为乱码。我配的actionform是动态的。问何解如何解决这个问题


另外有谁能说一下从文件编辑保存及传输之中相关的编码问题吗。
如我要一个jsp文件中设了GBK。保存的时候用的是UTF-8.再者在action中的request设的编码是如何进行编码的。这个request 是否对<html:text>的输入内容进行编码。我们输入的内容又是如何编码的根据什么决定的。再者。
...全文
141 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
s74110s 2008-04-21
  • 打赏
  • 举报
回复
我是从输入框中取数据。也配了filter。网页的编码utf-8.gbk都试过一样乱码。我就写了过actionservlet的子类来行转码都无效。
zhang5911 2008-04-21
  • 打赏
  • 举报
回复
架构师交流群:59048426,已经上传google 、 eBay、Youtube等顶级软件产品的架构分析!资料陆续上传中。
达到人数后开始培训!欢迎加入探讨,提问题!
=============================================
《企业应用架构模式》pdf 系列书籍已经上传至群共享,欢迎下载!
能够经常提问及回答问题的朋友,可以得到群主的精美小礼品,赶紧加入吧!

s74110s 2008-04-21
  • 打赏
  • 举报
回复
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
// TODO Auto-generated method stubaaaa
request.setCharacterEncoding("GBK");
response.setCharacterEncoding("GBK");
chain.doFilter(request,response);

}
<filter>
<filter-name>MyFilter</filter-name>
<filter-class>com.ZY.filter.MyFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>MyFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
rock550613 2008-04-21
  • 打赏
  • 举报
回复
lz你说的问题可能就出在FILTER中,你看一下你的dofilter方法中是否创建过输出对象write一类的这些对象,如果有,你把它屏蔽掉试。我以前也遇到过,找了半天,原来问题就在过滤器中。你检查一下你的过滤器试。另外,全部都改成UTF-8,或全部GBK;
NONE9 2008-04-20
  • 打赏
  • 举报
回复
建议楼主编码全部一致用UTF-8 ,然后添加一个过滤器,里面也转成一致的编码
xylyy 2008-04-20
  • 打赏
  • 举报
回复
编码方式肯定得要统一,我人觉得UTF-8比较好!!!如果你的数据库是mysql的话,
安装的时候最好用UTF-8编码方式,顺便选中有个“日本语”的单选按钮,记住”日本语“选项
OnlyFor_love 2008-04-20
  • 打赏
  • 举报
回复
同意楼上xyz20003的观点,配置一个过滤器,然后在web.xml中进行配置,这样的话所有的提交都会先进行过滤,也就是进行编码转换,这样你取数据的时候就不会有乱码。
hl8189 2008-04-20
  • 打赏
  • 举报
回复
统一修改为GBK就OK了。
Shine_Panda 2008-04-20
  • 打赏
  • 举报
回复
编码最好进行统一设置.
要不就 GBK 要不就UTF-8.
两者混用回有好多意想不到的乱码.
临远 2008-04-20
  • 打赏
  • 举报
回复
需要配置过滤器。

可以参考我们教程中对乱码的说明:

http://www.family168.com/tutorial/jsp/html/jsp-ch-02.html#jsp-ch-02-02
geweixinerr 2008-04-20
  • 打赏
  • 举报
回复
自定义EL函数!
kokobox 2008-04-20
  • 打赏
  • 举报
回复
lz 把你的filter和web.xml贴出来看看

可能是你filter的问题。


kuang87929 2008-04-20
  • 打赏
  • 举报
回复
我感觉你struts还没有学到家,用filter是无法来预处理ActionServlet请求的
你应该好好看看struts的预处理类,重写它
zhangchao2156 2008-04-20
  • 打赏
  • 举报
回复
对啊,用gbk就不要用utf-8,用utf-8就不要用gbk
lovest317 2008-04-20
  • 打赏
  • 举报
回复
同意`````````````
mozisixiang 2008-04-20
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 xuhbiao 的回复:]
建议楼主编码全部一致用UTF-8 ,然后添加一个过滤器,里面也转成一致的编码
[/Quote]
太正确了
robydeng 2008-04-19
  • 打赏
  • 举报
回复
是不是struts没有生成国际化文件呀???

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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