用struts写的一个项目中,前台有一个超链接向后台发送请求并传递包含中文的变量值。结果出错了。可是这个值在之前用表单以post方式传递的时候是没有问题的。
超链接的参数传递是以get方式操作的,在网上查到get和post的传递方式是不一样的。
大致理解的意思是,post方式是以页面中指定的编码格式编码的,而get方式需要用URL传递,所以会被进行另外的编码。
所以get方式传递的变量最好以new String(xxx.getBytes("iso-8859-1"),"utf-8")的方式接收。
有人说可以修改tomcat里filter的编码方式,但是还是不要随意修改的好,能以最小的代价修改最好。