c3p0改写工具类
创建JBUT2:类
要导入包:c3p0, mysql-connector-java
import com.mchange.v2.c3p0.ComboPooledDataSource;
import com.mchange.v2.c3p0.DataSources;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class JBUT2 {
private static final ComboPooledDataSource dataSource=new ComboPooledDataSource(); //创建c3p0对象
public static Connection getConnection() throws SQLException {
Connection conn=null;
return dataSource.getConnection();
}
public static DataSource getDataSource(){
return dataSource;
}
public static void release(Statement stmt,Connection conn){
if(stmt!=null){
try {
stmt.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
stmt=null;
}
}
}
创建:调用类JBUT3:测试
Connection conn=JBUT2.getConnection();//
调用了JBUT2类的getConnection()方法:
返回:
return dataSource.getConnection();//
ComboPooledDataSource dataSource=new ComboPooledDataSource(); //创建c3p0对象
创建对象:(一创建,读取配置文件信息,完成数据库驱动,完成数据库连接,)
我之前创建了:配置文件:xml:c3p0-config.xml
<?xml version="1.0" encoding="UTF-8" ?>
<c3p0-config>
<default-config>
<property name="driverClass">com.mysql.jdbc.Driver</property>
<property name="jdbcUrl">jdbc:mysql://localhost:3306/new_schema</property>
<property name="user">root</property>
<property name="password">your-password</property>
</default-config>
<!-- This app is massive! -->
<named-config name="oracel">
<property name="DriverClass">com.mysql.jdbc.Driver</property>
<property name="JdbcUrl">jdbc:mysql://localhost:3306/new_schema</property>
<property name="User">root</property>
<property name="Password">your-password</property>
</named-config>
</c3p0-config>
在
return dataSource.getConnection(); //
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class JBUT3 {
public static void main(String[] args){
ResultSet rs;
try {
Connection conn=JBUT2.getConnection();
String sql = "select * from user";
PreparedStatement pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while (rs.next()) {
System.out.println(rs.getString("password"));
}
}
catch (SQLException throwables)
{
throwables.printStackTrace();
}
}}