首页上一页 1 下一页尾页 2 条记录 1/1页
jsp开发手册门户网站问题 求求各位高手了
发表在JavaWeb图书答疑
2008-11-19
是否精华
是
否
版块置顶:
是
否
求求各位高手了
这个程序必须把总数据库字符集改成utf8或latin1.单改里面的单个数据库字符集utf8或latin1插入中文
乱码
但我买了个jsp空间学习用,人家都是gbk编码.不能为我一个人改啊
我都急疯了,我把程序读了3边也没看出马病.
是不是这里啊?
//对输入的字符串进行一次编码转换,防止SQL注入
public static String StringtoSql(String str) {
str = nullToString(str, "");
try {
str = str.trim().replace('\'', (char) 1);
} catch (Exception e) {
return "";
}
return str;
}
//对字符串进行二次编码转换,防止出库时异常
public static String SqltoString(String str) {
str = nullToString(str, "");
try {
str = str.replace( (char) 1, '\'').trim();
} catch (Exception e) {
return "";
}
return str;
}
//对字符串进行Unicode编码
public static String toUnicode(String strvalue) {
try {
if (strvalue == null) {
return null;
} else {
strvalue = new String(strvalue.getBytes("GBK"), "ISO8859_1");
return strvalue;
}
} catch (Exception e) {
return "";
}
}
//对字符串进行Unicode编码
public static String toUnicode(String strvalue) {
try {
if (strvalue == null) {
return null;
} else {
strvalue = new String(strvalue.getBytes("GBK"), "ISO8859_1");
return strvalue;
}
} catch (Exception e) {
return "";
}
}
/修改使用的方法
public static String getRequestString(HttpServletRequest request,String s){
s=nullToString(s).trim();
s=ParamUtils.getEscapeHTMLParameter(request, s);
s=StringUtils.toChinese(s);
s=StringUtils.toUnicode(s);
s=StringUtils.StringtoSql(s);
return s;
}
//添加使用的方法
public static String getRequestString(Request request, String s) {
s=nullToString(s).trim();
s=ParamUtils.getEscapeHTMLParameter(request, s);
// s=StringUtils.toChinese(s);
s=StringUtils.toUnicode(s);
s=StringUtils.StringtoSql(s);
return s;
}
public static String getSqlString(String s){
s=StringUtils.SqltoString(s);
s=StringUtils.toChinese(s);
s=nullToString(s).trim();
return s;
}
public static int getIntParameter(Request request, String s) {
int defaultNum=0;
String temp = request.getParameter(s);
if (temp != null && !temp.equals("")) {
int num = defaultNum;
try {
num = Integer.parseInt(temp);
} catch (Exception ignored) {}
return num;
} else {
return defaultNum;
}
}
}
或者是不是在建数据库时默认的数据库是latin1,在上面就直接创建了!
导致非要改成latin1或utf8才不出乱码!
我求求大家了帮帮忙吧! 偶再这里谢谢大家了!!!
这个程序必须把总数据库字符集改成utf8或latin1.单改里面的单个数据库字符集utf8或latin1插入中文
乱码
但我买了个jsp空间学习用,人家都是gbk编码.不能为我一个人改啊
我都急疯了,我把程序读了3边也没看出马病.
是不是这里啊?
//对输入的字符串进行一次编码转换,防止SQL注入
public static String StringtoSql(String str) {
str = nullToString(str, "");
try {
str = str.trim().replace('\'', (char) 1);
} catch (Exception e) {
return "";
}
return str;
}
//对字符串进行二次编码转换,防止出库时异常
public static String SqltoString(String str) {
str = nullToString(str, "");
try {
str = str.replace( (char) 1, '\'').trim();
} catch (Exception e) {
return "";
}
return str;
}
//对字符串进行Unicode编码
public static String toUnicode(String strvalue) {
try {
if (strvalue == null) {
return null;
} else {
strvalue = new String(strvalue.getBytes("GBK"), "ISO8859_1");
return strvalue;
}
} catch (Exception e) {
return "";
}
}
//对字符串进行Unicode编码
public static String toUnicode(String strvalue) {
try {
if (strvalue == null) {
return null;
} else {
strvalue = new String(strvalue.getBytes("GBK"), "ISO8859_1");
return strvalue;
}
} catch (Exception e) {
return "";
}
}
/修改使用的方法
public static String getRequestString(HttpServletRequest request,String s){
s=nullToString(s).trim();
s=ParamUtils.getEscapeHTMLParameter(request, s);
s=StringUtils.toChinese(s);
s=StringUtils.toUnicode(s);
s=StringUtils.StringtoSql(s);
return s;
}
//添加使用的方法
public static String getRequestString(Request request, String s) {
s=nullToString(s).trim();
s=ParamUtils.getEscapeHTMLParameter(request, s);
// s=StringUtils.toChinese(s);
s=StringUtils.toUnicode(s);
s=StringUtils.StringtoSql(s);
return s;
}
public static String getSqlString(String s){
s=StringUtils.SqltoString(s);
s=StringUtils.toChinese(s);
s=nullToString(s).trim();
return s;
}
public static int getIntParameter(Request request, String s) {
int defaultNum=0;
String temp = request.getParameter(s);
if (temp != null && !temp.equals("")) {
int num = defaultNum;
try {
num = Integer.parseInt(temp);
} catch (Exception ignored) {}
return num;
} else {
return defaultNum;
}
}
}
或者是不是在建数据库时默认的数据库是latin1,在上面就直接创建了!
导致非要改成latin1或utf8才不出乱码!
我求求大家了帮帮忙吧! 偶再这里谢谢大家了!!!