问个关于提交参数的问题,提交参数的中文问题。
想问下,提交的时候可不可以修改参数,例如在过滤器里面把参数编码改成gb2312然后才提交上去或者发往其他页面,不然的话如果中文参数放在页面地址中到处理的时候都要转换编码比较麻烦,或者还有其他处理方法吗?
------解决方案--------------------当然可以了,写一个filter就行了,映射所有的请求路径
------解决方案--------------------request.setCharacterEncoding()
------解决方案--------------------直接写在JSP页面:
<%!
public String Str_rep(String str){
if(str==null||str.equals( " ")){
str = " " ;
}else{
try {
// str = new String(str.getBytes( "ISO8859-1 "));
str = new String(str.getBytes( "ISO8859_1 "), "GB2312 ");
}catch (Exception ex) {}
}
return str ;
}
%>
调用:
<%
String name=Str_rep(request.getParameter( "name "));
%>
写在javabean:
可以将转换直接写在javabean里面,这样就不用每个页面都写,直接调用就可以啦! <jsp:useBean id= "slink " class= "news.mysqltest " scope= "page "> </jsp:useBean>
<%
String name=slink.Str_rep(request.getParameter( "name "));
%>
------解决方案--------------------在tomcat的example中已经有这个的过滤器的例子啊,你直接拿来用啊
------解决方案--------------------在Tomcat的server.xml文件,在 <Server> -- <Service> 元素下的两个 <Connector> 元素中分别配置 URIEncoding 属性,将值设为“GBK”或“GB2312”,再试试看。