?? database.java
字號:
package com.everstar.database;
import java.sql.*;
import java.io.*;
public class Database
{
final static String SQL_SELECT = "SELECT";
final static String SQL_UPDATE = "UPDATE";
final static String SQL_INSERT = "INSERT";
final static String SQL_DELETE = "DELETE";
static ConnectionPoolManager m_manager = null;
Connection m_connection = null;
//////////////////////////////////////////////////////
public void print(String msg)
{
System.out.println("DEBUG>>->" + msg);
}
//////////////////////////////////////////////////////
public Database()
{
//Get the instance of database connection pool manager.
m_manager = ConnectionPoolManager.getInstance();
}
public void freeConnection()
{
m_manager.freeConnection(m_connection);
}
public void close()
{
freeConnection();
}
public ResultSet select(String sql)
{
if(sql == null || (sql = sql.trim()) == "")
return null;
String tmp = sql.toUpperCase();
if(!tmp.startsWith(SQL_SELECT))
return null;
return executeQuery(sql);
}
public int count(String sql)
{
if(sql == null || (sql = sql.trim()) == "")
return -1;
String tmp = sql.toUpperCase();
if(!tmp.startsWith(SQL_SELECT))
return -1;
return executeCount(sql);
}
public int insert(String sql)
{
return executeUpdate(sql,SQL_INSERT);
}
public int delete(String sql)
{
return executeUpdate(sql,SQL_DELETE);
}
public int update(String sql)
{
return executeUpdate(sql,SQL_UPDATE);
}
private ResultSet executeQuery(String sql)
{
ResultSet rs = null;
try
{
m_connection = m_manager.getConnection();
rs = m_connection.createStatement().executeQuery(sql);
}
catch(Exception ex)
{
ex.printStackTrace();
}
return rs;
}
private int executeCount(String sql)
{
ResultSet rs = null;
int count = 0;
try
{
m_connection = m_manager.getConnection();
rs = m_connection.createStatement().executeQuery(sql);
/*if(rs.last())
count = rs.getRow();
else
count = -1;*/
while(rs.next())
count++;
}
catch(SQLException ex)
{
}
finally
{
close();
}
return count;
}
private int executeUpdate(String sql, String type)
{
if(sql == null || (sql = sql.trim()) == "" ||
type == null || (type = type.trim()) == "" ||
!type.equals(SQL_INSERT) &&
!type.equals(SQL_DELETE) &&
!type.equals(SQL_UPDATE))
return -1;
print("Type:" + type);
print("SQL:" + sql);
String tmp = sql.toUpperCase();
if(!tmp.startsWith(type))
return -1;
int count = 0;
try
{
m_connection = m_manager.getConnection();
count = m_connection.createStatement().executeUpdate(sql);
}
catch(SQLException ex)
{
count = -1;
}
finally
{
close();
}
return count;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -