try{
String str=new String("".getBytes("IOS8859-1"),"gbk");
}catch(Exception e){}
String str=new String("".getBytes("IOS8859-1"),"gbk");
}catch(Exception e){}
解决方案 »
- Hibernat关联设计的一个问题
- 超紧急求java和vc 写得socket server通信问题。没分了,谁帮帮忙啊
- 方法重写
- HTML显示xml中的内容代码怎么写
- 一个简单但是很基础的问题,寻求解答!
- 上海的J2EE程序员一般多少工资啊?
- jsp:forward问题
- 摆托,别提MVC啦!
- 为何EJB中事务不能回滚??sessionContext.setRollbackOnly无效!
- maven项目用tomcat启动一直无法连接数据库!!Could not get JDBC Connection
- axis2 传递javabean的问题
- Tomcat启动问题:The listener "listeners.SessionListener" is already configured for this context
1.记住超链接是GET方式提交
2.POST方式提交可以统一转码(这样获得的参数可以统一转码)
例:request.setCharacterEncoding("UTF-8"); //如果你用的编码方式是GBK就写GBK,要写在获得参数的前面
String name=request.getParameter("name");
System.out.println(name); //可以转过来,必须是POST提交
3.GET方式不能用统一转码
但可以这样做:
String name=request.getParameter("name");
name=new String(name.getBytes("ISO-8859-1"),"UTF-8"); //这种也叫重新赋值的方式
System.out.println(name);
但这样做也带来很多不便,假如你有很多request.getParameter("something"); 你必须一一转码.
4.GET方式还有一种配置可以在Tomcat下配置URIEncoding=UTF-8
2页面显示中文乱码<%page pageEncoding="utf-8"%>3传递中文参数乱码修改server.xml(解决get方式)<Connector port="8080" protocol="HTTP/1.1" maxThreads="150" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/> 编写过滤器(Filter)(解决post方式)package servlets; import java.io.IOException; import java.io.IOException; import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse; public class EncodingFilter implements Filter {
public void init(FilterConfig config) throws ServletException {
} public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding("utf-8");
chain.doFilter(request, response);
} public void destroy() {
}
}
在web.xml注册<filter>
<filter-name>EncodingFilter</filter-name>
<filter-class>servlets.EncodingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>EncodingFilter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
在struts.xml里面加一句
constant name="struts.i18n.encoding" value="GBK" />
这个就ok了
这样会导致你所有部署在这个Tomcat下的项目都使用UTF-8的URL编码....
strut2可以自行转码地。
在struts.xml里面加一句
constant name="struts.i18n.encoding" value="GBK" />
这个就ok了
我就是用这个的,试了很多次了,还是不行,怎么回事啊?