/**
*
*/
package com.huawei.widget.util;
import java.math.BigDecimal;
/**
* @author tanjixuan
* @since 2008-12-20
*
*/
public final class DatabaseUtil
{
// oracle转义字符
public static final char ORACLE_ESCAPE_CHAR = '\\';
// oracle特殊字符定义,用于转义。以“|”字符分割
public static final String ORACLE_SPACIAL_CHAR = "|%|_|" + ORACLE_ESCAPE_CHAR + "|";
// 不允许实例化
private DatabaseUtil()
{
}
static public String toEscape(String data)
{
if (null == data || "".equals(data.trim()))
{
return data;
}
int len = data.length();
StringBuilder escapeStrBuild = new StringBuilder();
char singleChar;
for (int index = 0; index < len; index++)
{
singleChar = data.charAt(index);
if (ORACLE_SPACIAL_CHAR.indexOf(singleChar) > -1)
{
escapeStrBuild.append(ORACLE_ESCAPE_CHAR).append(singleChar);
}
else
{
escapeStrBuild.append(singleChar);
}
}
// 处理oracle的字符串特殊字符了。
String escapeStr = escapeStrBuild.toString().replace("'", "''");
return escapeStr;
}
static public String toOracleString(String data)
{
if (null == data || "".equals(data.trim()))
{
return data;
}
// 处理oracle的字符串特殊字符了。
String escapeStr = data.replace("'", "''");
return escapeStr;
}
static public Long toLong(BigDecimal data)
{
Long resultLong = 0L;
if (null != data)
{
resultLong = data.longValue();
&