在项目URL可以允许输入任何字符,只需验证非空即可。我发现在hibernate,插入单引号,以及‘%’或者‘_’等符合时查询的结果会出现错误。
/**
* TODO SQL转义字符
* @methodName escapeSQLLike
* @param likeStr
* @return 请描述参数
* @author 开发组
* @date 2011-3-25
* @version 1.0
*/
public static String escapeSQLLike(String likeStr)
{
if(likeStr!=null)
{
String newStc = likeStr.replace("'", "'||chr(39)||'").replace(
"&", "'||chr(38)||'").replace("%", "'||chr(37)||'");
return newStc.replace("_", "'||chr(95)||'").replace(
"\\", "'||chr(92)||'").replace("/", "'||chr(47)||'");
}
return null;
}
转义后执行查询无错误。
//ip地址和端口号转换16进制互转
/**
* TODO 16进制转换IP地址
* @methodName getIPAndPort
* @param IPandPort
* @return 请描述参数
* @author 开发组
* @date 2011-3-26
* @version 1.0
*/
public static String getIPAndPort(String IPandPort)
{
if(IPandPort==null||(IPandPort!=null&&"".equals(IPandPort.trim())))
{
return "";
}
String[] ip = IPandPort.split("|");
StringBuffer str = new StringBuffer("");
try {
for (int i = 1; i < 9; i++)
{
if(i%2==0)
{
str.append(Integer.parseInt(ip[i-1]+""+ip[i],16));
if(i!=8)
{
str.append(".");
}
}
}
if(ip.length>9)
{
str.append(":");
str.append(Integer.toString(Integer.parseInt(IPandPort.substring(8), 16)));
}
}
catch (NumberFormatException e)
{
return "format erro";
}
return str.toString();
}
/**
* TODO IP地址转换16进制
* @methodName getIPAndPort
* @param IPandPort
* @return 请描述参数
* @author 开发组
* @date 2011-3-26
* @version 1.0
*/
public static String iPConvert(String ip)
{
String[] ipInfo=ip.split(":");
String[] ips=ipInfo[0].split("\\.");
StringBuffer str=new StringBuffer("");
for(int i=0;i<ips.length;i++)
{
int temp = Integer.valueOf(ips[i]);
if (temp < 16)
{
// 如果是一位数前面加0
str.append("0");
str.append(Integer.toHexString(temp));
}
else
{
str.append(Integer.toHexString(temp));
}
}
if(ipInfo.length==2)
{
str.append(Integer.toHexString(Integer.valueOf(ipInfo[1].replace(":", ""))));
}
return str.toString();
}
分享到:
相关推荐
常用 API 方法 简单 汇总
一些java常用的简单方法,日期,字符串的处理等
很详细的介绍了常用窗体的使用方法 常用窗体的常用方法 十分详细简单 窗体 控制 方法 使用
python 常用方法 Python是一种高级编程语言,它具有简单易学、可读性强、功能强大等特点,因此在数据分析、人工智能、Web开发等领域得到了广泛应用。在Python中,有许多常用方法可以帮助我们更加高效地编写代码,...
VC++6.0常用控件使用方法简单介绍
常用STL的简单使用方法: /队列的使用 /链表的使用 /容器 vector 的使用
python常用方法全文共2页,当前为第1页。python常用方法全文共2页,当前为第1页。python常用方法 python常用方法全文共2页,当前为第1页。 python常用方法全文共2页,当前为第1页。 Python 作为一种简单易学的编程...
类的反射机制 自己遇到的一个知识点 通过代理创建出一个类 执行类的方法
简单总结可以下Java中String类中的常用方法
进行简单常用openlayers功能封装,包括地图要素创建,热力图,聚集,样式修改,地图弹窗,地图事件等进行简单封装,适合于自学笔记
///ElseCkeck()返回页面验证码图片 使用方法:单独创建一个页面 在首次加载事件里写 AspNetHelp.ElseCkeck(Page); 在使用验证码的页面直接写 img src="这个页面的路径" 注意验证码保存在 Session["CheckCode"]中 这里...
下载附件,附件里面有2个js文件,一个是utilFn.js,另一个是压缩版utilFn.min.js。 引用[removed][removed]就可以使用里面的方法。 或者引用[removed][removed] 使用说明 使用很简单,用浏览器打开附件里面的utilFn...
此资源包括了Layui各常用组件的使用方法,前端页面功能以及与后端功能接口对接的简单示例
文章简单介绍了几种常用的地基沉降计算方法
数学建模常用方法数据分析方法插值和拟合,可以用来简单预测
黑客攻破WINDOWS操作系统,常用的也就是几种办法而已,而我们常常忽视。
Collection接口中的常用方法的简单介绍
我们在一个小格子上找到这些参数的最佳值,并研究它们的有效范围。 我们还确定了征兆问题发作的前兆。 提出了一种与轮廓变形有关的雅可比估计的快速方法,并研究了其数值稳定性。 对于特定的晶格参数选择,我们发现...
方法的声明及在Main中的调用方法、递归的简单例子、重载、工具类中的常用方法、字符串的定义及内存分配及一些方法。
UltaLib 一个包含常用方法的简单库