问题还未解决,高手仍需帮忙!!!!!!

MarcoE 2003-09-11 02:14:24
我在JSP 的页面传送数据给JAVABEAN时, 如果输入的数据里面有" ' "这个单引号就会出错, 例如: Insert myName Values('goodboy'')
就会出错, 我想请问一下有没有办法可以将我在JSP 里传送的数据变成合法的字符,
再经由JAVABEAN处理呢 ?
我想达到的效果是这个单引号既可以存储在数据库里,可以读取出来,并不是把它搞掉
麻烦各位高手帮忙帮忙!
小弟万分感激!!!!!!!!
...全文
57 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lynx1111 2003-09-11
  • 打赏
  • 举报
回复

public String replace(String parentStr,String ch,String rep) {
int i = parentStr.indexOf(ch);
StringBuffer sb = new StringBuffer();
if (i == -1)
return parentStr;
sb.append(parentStr.substring(0,i) + rep);
if (i+ch.length() < parentStr.length())
sb.append(replace(parentStr.substring(i+ch.length(),parentStr.length()),ch,rep));
return sb.toString();
}
%>
<%//调用
str=replace(str," "," ");
str=replace(str,"\n","<br/>");
%>
-------------------------------------------------------------
-------------------------------------------------------------
public static String toHTMLString(String in) {
StringBuffer out = new StringBuffer();
for (int i = 0; in != null && i < in.length(); i++) {
char c = in.charAt(i);
if (c == '\'')
out.append("'");
else if (c == '\"')
out.append(""");
else if (c == '<')
out.append("<");
else if (c == '>')
out.append(">");
else if (c == '&')
out.append("&");
else if (c == ' ')
out.append(" ");
else if (c == '\n')
out.append("<br/>");
else
out.append(c);
}
return out.toString();
}
gks_cn 2003-09-11
  • 打赏
  • 举报
回复
/**
* Escape SQL tags, ' to ''; \ to \\.
* @param input string to replace
* @return string
* example:
* String u_sign=request.getParameter("u_sign");
u_sign=StringUtil.escapeSQLTags(u_sign);
* 在向数据库输入数据的时候必须调用这个方法
*/
public static String escapeSQLTags(String input) {
if (input == null || input.length() == 0) {
return input;
}
StringBuffer buf = new StringBuffer();
char ch = ' ';
for (int i = 0; i < input.length(); i++) {
ch = input.charAt(i);
if (ch == '\\') {
buf.append("\\\\");
}
else if (ch == '\'') {
buf.append("\'\'");
}
else {
buf.append(ch);
}
}
return buf.toString();
}
lynx1111 2003-09-11
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/topic/1679/1679343.xml?temp=.1823084
rainlin1 2003-09-11
  • 打赏
  • 举报
回复
如果你用的是oracle,你想向数据库中插入goodboy',只要插入goodboy''就可以了。其它的数据库,也是有转义字符的,找找看。
rainlin1 2003-09-11
  • 打赏
  • 举报
回复
你用的是什么数据库?

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧