package com.cmcc.cs.rpc.utils;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Properties;
import org.apache.commons.dbcp.BasicDataSource;
/**
* 数据连接类
*
* @author yw
*
*/
public class DBHelper {
private static BasicDataSource ds = new BasicDataSource();
static {
InputStream is = DBHelper.class.getClassLoader().getResourceAsStream(
"config/DBHelper.properties");
Properties prop = new Properties();
try {
prop.load(is);
System.out.println(prop.getProperty("driver")
+ prop.getProperty("url") + prop.getProperty("username")
+ prop.getProperty("password"));
ds.setDriverClassName(prop.getProperty("driver"));
ds.setUrl(prop.getProperty("url"));
ds.setUsername(prop.getProperty("username").trim());
ds.setPassword(prop.getProperty("password").trim());
ds.setMaxActive(Integer.parseInt(prop.getProperty("maxActive")
.trim()));
ds.setInitialSize(Integer.parseInt(prop.getProperty("initialSize")
.trim()));
ds.setMaxWait(Integer.parseInt(prop.getProperty("maxWait").trim()));
ds.setMaxIdle(Integer.parseInt(prop.getProperty("maxIdle").trim()));
ds.setRemoveAbandoned(Boolean.parseBoolean(prop
.getProperty("removeAbandoned")));
ds.setRemoveAbandonedTimeout(Integer.parseInt(prop.getProperty(
"removeAbandonedTimeout").trim()));
Connection con = ds.getConnection();
System.out.println(con.getClass().getName());
} catch (IOException e) {
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
if (is != null)
is.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
public static Connection getConnection() throws SQLException {
return ds.getConnection();
}
public static void close(ResultSet rs, PreparedStatement ps, Connection conn) {
try {
if (rs != null)
rs.close();
if (ps != null)
ps.close();
if (conn != null)
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
//下面是配置文件的信息DBHelper.properties
###############################################33
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://192.168.107.211:33061/sso?useUnicode=true&characterEncoding=UTF-8
username=root
password=root
maxActive=20
initialSize=1
maxWait=60000
maxIdle=20
minIdle=3
removeAbandoned=true
removeAbandonedTimeout=180
connectionProperties=clientEncoding=GBK
//补充连接池,这里需要4个jar包
lib/commons-dbcp-1.4.jar,\
lib/commons-collections-3.2.1.jar,\
lib/commons-pool-1.5.6.jar,\
lib/mysql-connector-java-5.1.6-bin.jar
分享到:
相关推荐
java jdbc 连接池实例 项目只要配数据源就可以直接启用, 也可以整合到你个项目里面, 可oracle、mysql、sqlserver自由切换方言。
java jdbc 连接池,代码从网上找的
包括JDBC连接池的相关代码和xml配置文件。
完美的java jdbc连接池实例.zip
在Java语言中,JDBC(Java DataBase Connection)是应用程序与数据库沟通的桥梁
这是我写的一个对JDBC连接池的实现,高手见了可不要笑啊!!!! 程序是在linux下用Eclipse下编写的. 用Jude进行建模,数据库使用了mysql. 程序自带了MySql的Connection连接驱动类,你也可以使用别的驱动类和数据库, 在src/...
jdbc 连接池 c3p0 dbcp dbutils mysql jar包和指导文档
此类非常简单,免去了网上众多资料里所说的麻烦的tomcat配置,更强...不仅oracle,mysql,sqlserver2000都行,因为它依据的是你自己连接数据库的驱动。当然首先你要保证你拥有一个能连接自己数据库的对应驱动类。如下面以
Java-JDBC【源码】数据库连接池技术、常规操作与Durid对比、测试(20-200)不同连接数下,10万记录,1万并发,CPU磁盘占用情况 1.数据库连接池 2.Durid介绍(官方文档) 3.编码,问题,常规并发操作 3.1.JDBCUtil....
java_jdbc数据库连接池总结 有讲原理,不错
Java jdbc数据库连接池Java jdbc数据库连接池Java jdbc数据库连接池Java jdbc数据库连接池
JDBC - Java 连接Mysql JDBC连接池使用工具 C3P0 连接池 and druid-1.0.9
JDBC连接池的jar包
Java连接池 JDBC连接池(通用basedao)可直接用的模板
使用java技术实现jdbc连接池 包括了全面的jar和cp30,commons-DBCP,c3p0 for linux的包,以及jdbc jars
java使用jdbc连接池时所使用的dbcp工具包,也可在官网下载
Java应用程序访问数据库的基本原理 在Java语言中,JDBC(Java ...JDBC提供两种API,分别是面向开发人员的API和面向底层的JDBC驱动程序API,底层主要通过直接的JDBC驱动和JDBC-ODBC桥驱动实现与数据库的连接。
JDBC连接池java类,直接导入就可以使用的java类
JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种...通过pool连接池提高性能,并将数据库数据直接转成json对象,且封装了几种取值方式。比传统的ojdbc性能更快更高效
java jdbc帮助类 v1.0 自带连接池 boolean delete(java.lang.String sql) 删除单条记录的方法,适用于简单的sql语句 boolean delete(java.lang.String sql, java.util.Map<java.lang.Integer,java.lang.Object>...