我目前正在使用struts框架开发双语应用程序(英语和阿拉伯语)。
我的应用程序目前是为了支持英文字符而构建的。
现在我正尝试在Tomcat 6环境中的JSP页面上发布和读取UTF-8编码的字符。
所以我在所有jsp页面和动作类中都设置了基本的东西。
我在动作类
中设置了它 `request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
response.setContentType("UTF-8");`
在我的jsp页面中:<%@page pageEncoding="UTF-8"%>
<%@page language="java" contentType="text/html;charset=UTF-8"%>
因此,当我尝试将阿拉伯字符发布到我的jsp页面时,它会显示垃圾字符。
我该如何纠正?我还需要做些什么才能支持阿拉伯语或汉字?
此外,一旦用户填写应用程序,我使用数据库来保存表单。用户可以使用英语或阿拉伯语填写表格。
我如何实现这一目标?
答案 0 :(得分:2)
您只需要做两件事就可以让UTF-8适用于POST表单。
把它放在JSP的顶部:
<%@ page pageEncoding="UTF-8" %>
将其放在Filter
中,在行动之前运行。
request.setCharacterEncoding("UTF-8");
在动作类中执行此操作可能已经太晚了。它应该在之前设置或任何MVC框架收集请求参数。