浏览 5411 次
该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2007-08-29
if(position.equalsIgnoreCase("主管")){ RequestDispatcher rd = getServletContext().getRequestDispatcher("/a.jsp"); rd.forward(req,res); }else if(position.equalsIgnoreCase("服务员")){ RequestDispatcher rd = getServletContext().getRequestDispatcher("/b.jsp"); rd.forward(req,res); } 程序可以实现转向,但是无论是 a.jsp 还是 b.jsp 中的中文都是乱码,但如果直接在地址栏里敲.../a.jsp,页面就不是乱码,或者在servlet中用 sendredirect() , 一切就正常。 背景: 工作环境都是 gb2312,页面的属性设置伟gb2312, 字符编码格式也设置伟gb2312 Dispatcher.forward() 和 sendredirect()都可以跳到下张页面,除了一个能传request,一个不能,他们在编码格式上有什么不同否? 不知道是什么原因,怎么解决? 望指教。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-10-22
你在login.java文件中 加上
response.setContentType("text/html; charset=gb2312"); 看看好用不?? 这句话是设置发出的代码格式。 |
|
返回顶楼 | |
发表时间:2007-10-22
默认的Tomcat服务器端处理的编码是ISO-8859-1,而你是GB2312,应该会出乱码的。我记得javaeye里面有一个关于修改tomcat配置文件来修改默认编码的,你搜一搜吧。
如果勤快点,自己配置一个filter来过滤字符串 |
|
返回顶楼 | |
发表时间:2007-10-23
接楼上的,比如server.xml里面~~~
<Connector port="8080" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8"/> |
|
返回顶楼 | |