在jsp页面使用了strut2 的s:optiontransferselect标签 提交两个list类型的数据,里面都是中文的,后台获取的数据却变成了这样的形式长期负债,不知道到底是哪里的问题 jsp页面的编码方式是gbk,strut2.xml也配置了编码方式为gbk。数据提交的方式是<ss:submit value="筛选" formId="selectCom" href="%{divSelectCom}" targets="result" onclick="selectCompany()"></ss:submit> 采用了异步提交 。 求各位大侠知道下 到底哪里出错了 ,找了一下午额 还没有找到 纠结死了
解决方案 »
- 关于配置文件和包的问题
- 关于大学生对计算机培训的一点看法
- org.hibernate.LazyInitializationException:could not initialize proxy - the owning Session was closed
- Struts
- 这样的sql语句怎么用hql来实现?
- hibernate中的query查询和criteria查询的效率那个高呢,一般用谁呢?
- 请帮忙:这个命令行的执行为什么看不到结果呢? 谢谢~
- (100)快快快!!!一个你们很容易的问题
- JBuilder8的bug
- springmvc rest风格 url-pattern的配置问题
- js跳转的问题
- Struts2的helloword程序
/**
* 将页面传递的Unicode字符编码转换成相应的汉字
* */
public class GetStringByString { private String string;
public GetStringByString(String string){
this.string=string;
}
public String getUnicodeString(){
if(!isIllegal(this.string)){
return this.string;
}
String[] s=this.string.split(";");
StringBuffer sb=new StringBuffer();
for(int i=0;i<s.length;i++){
if(isHave(s[i])){
String s1=s[i].substring(0, s[i].indexOf("&"));
sb.append(s1);
String s2=s[i].substring(s[i].indexOf("#")+1);
sb.append((char)Integer.parseInt(s2));
}
else{
sb.append(s[i]);
}
}
return sb.toString();
}
//判断是否存在&#
private boolean isHave(String s){
for(int i=0;i<s.length();i++){
if(s.charAt(i)=='&'&&s.charAt(i+1)=='#'){
return true;
}
}
return false;
}
//判断是否存在;
private boolean isIllegal(String s){ for(int i=0;i<s.length();i++){
if(s.charAt(i)==';'&&s.charAt(i-6)=='#'&&s.charAt(i-7)=='&'){
return true;
}
}
return false;
}
}
我是自己写了一个工具类,进行转化的。。楼主我也是研究了很久才这样做的。。现在把源码贴出来。