📄 dbtoolmboard.java
字号:
/*
* Created on 2004-4-11
* Tencent Wap Group
* JOHN.WANG(huangxiaotao)
* any problem please forward to RTX 9060 or telephone 8779
* thx a lot
*/
package com.qq.content;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import com.qq.util.*;
import javax.sql.DataSource;
import javax.sql.rowset.CachedRowSet;
import org.apache.commons.dbcp.BasicDataSource;
import org.apache.commons.dbcp.ConnectionFactory;
import org.apache.commons.dbcp.DriverManagerConnectionFactory;
import org.apache.commons.dbcp.PoolableConnectionFactory;
import org.apache.commons.dbcp.PoolingDataSource;
import org.apache.commons.pool.ObjectPool;
import org.apache.commons.pool.impl.GenericObjectPool;
import com.sun.rowset.CachedRowSetImpl;
public class DBtoolMboard implements Serializable{
private BasicDataSource ds_gbk;
private Connection conn = null;
private Statement stmt = null;
private ResultSet rset = null;
private String DBuser="root";
private String DBPass="root";
private String DBServer="localhost";
private String DB="db_email";
static {
try {
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
}
catch (Exception e){
System.out.println("class load error");
e.printStackTrace();
}
}
/**
* init for core
* @throws SQLException
*/
public DBtoolMboard() throws SQLException{
}
public Connection getConn() throws SQLException{
return (ds_gbk.getConnection());
}
public DBtoolMboard(String server,String dbname) throws SQLException{
init(server,dbname);
}
public void init(String server,String dbname) throws SQLException{
System.out.println("new database poolx2 created");
String Url="jdbc:mysql://"+server+":3306/"+dbname+"?useUnicode=true&characterEncoding=gbk";
ds_gbk=new BasicDataSource();
ds_gbk.setDriverClassName("org.gjt.mm.mysql.Driver");
ds_gbk.setUsername(DBuser);
ds_gbk.setPassword(DBPass);
ds_gbk.setUrl(Url);
ds_gbk.setMinIdle(1);
}
public CachedRowSet queryGBK(String sql) throws SQLException{
CachedRowSetImpl rs;
try {
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
}
catch (Exception e){
System.out.println("class load error");
e.printStackTrace();
}
rs=new CachedRowSetImpl();
try {
conn = ds_gbk.getConnection();
stmt = conn.createStatement();
rset=stmt.executeQuery(sql);
rs.populate(rset);
System.out.println("gbk pool current active:"+ ds_gbk.getNumActive());
System.out.println("gbk pool current idel:"+ ds_gbk.getNumIdle());
}
catch (Exception e){
e.printStackTrace();
}finally {
try { rset.close(); } catch(Exception e) { }
try { stmt.close(); } catch(Exception e) { }
try { conn.close(); } catch(Exception e) { }
}
return rs;
}
public CachedRowSet query(String sql) throws SQLException{
return this.queryGBK(sql);
}
public void execute(String sql) throws SQLException{
try {
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
}
catch (Exception e){
System.out.println("class load error");
e.printStackTrace();
}
CachedRowSetImpl rs;
try {
rs=new CachedRowSetImpl();
}
catch (Exception e){
System.out.println("cachedrowset error!");
rs=new CachedRowSetImpl();
}
try {
conn = ds_gbk.getConnection();
stmt = conn.createStatement();
stmt.execute(sql);
//stmt.execute(sql);
System.out.println("gb pool current active:"+ ds_gbk.getNumActive());
System.out.println("gb pool current idel:"+ ds_gbk.getNumIdle());
}
catch (SQLException e){
System.out.println("dbtool executing error:"+sql);
throw e;
}finally {
try { rset.close(); } catch(Exception e) { }
try { stmt.close(); } catch(Exception e) { }
try { conn.close(); } catch(Exception e) { }
}
}
public static void printBytes(byte[] array, String name) {
for (int k = 0; k < array.length; k++) {
System.out.println(name + "[" + k + "] = " + "0x" +
UnicodeFormatter.byteToHex(array[k]));
}
}
public static void main(String[] args)throws Exception {
}
public final String getDB() {
return DB;
}
public final void setDB(String db) {
DB = db;
}
public final String getDBPass() {
return DBPass;
}
public final void setDBPass(String pass) {
DBPass = pass;
}
public final String getDBServer() {
return DBServer;
}
public final void setDBServer(String server) {
DBServer = server;
}
public final String getDBuser() {
return DBuser;
}
public final void setDBuser(String buser) {
DBuser = buser;
}
public static DataSource setupDataSource(String connectURI) {
ObjectPool connectionPool = new GenericObjectPool(null);
ConnectionFactory connectionFactory = new DriverManagerConnectionFactory(connectURI,null);
PoolableConnectionFactory poolableConnectionFactory = new PoolableConnectionFactory(connectionFactory,connectionPool,null,null,false,true);
PoolingDataSource dataSource = new PoolingDataSource(connectionPool);
return dataSource;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -