用C3P0完成数据库的连接
2012-11-29 09:02
113 查看
1.封装的javabean
package com.csdn.hbsi.domain;
public class User {
private int id;
private String name;
private double price;
private String author;
private String description;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
}
2.package com.csdn.hbsi.demo;
import java.sql.SQLException;
import java.util.List;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.ResultSetHandler;
import org.apache.commons.dbutils.handlers.BeanHandler;
import org.apache.commons.dbutils.handlers.BeanListHandler;
import org.junit.Test;
import com.csdn.hbsi.domain.User;
import com.csdn.hbsi.utils.DBManager;
public class demo_crud {
@Test
public void insert() throws SQLException {
QueryRunner runner = new QueryRunner(DBManager.getDataSource());
String sql = "insert into book(id,name,price,author,description) values(?,?,?,?,?)";
Object params[] = { 5, "cc", "66", "cccc", "dd" };
runner.update(sql, params);
}
@Test
public void update() throws SQLException {
QueryRunner runner = new QueryRunner(DBManager.getDataSource());
String sql = "update book set name=? where id=?";
Object params[] = { "eeee", 3 };
runner.update(sql, params);
}
@Test
public void delete() throws SQLException {
QueryRunner runner = new QueryRunner(DBManager.getDataSource());
String sql = "delete from book where id=?";
Object params[] = { 3 };
runner.update(sql, params);
}
@SuppressWarnings("deprecation")
@Test
public void find() throws SQLException {
QueryRunner runner = new QueryRunner(DBManager.getDataSource());
String sql="select * from book where id=?";
User user=(User) runner.query(sql, 1, new BeanHandler(User.class));
System.out.println(user);
}
@Test
public void findall() throws SQLException {
QueryRunner runner = new QueryRunner(DBManager.getDataSource());
String sql="select * from book";
List list=(List) runner.query(sql, new BeanListHandler(User.class));
System.out.println(list.size());
}
}
3.配置文件
com.mysql.jdbc.Driverjdbc:mysql://localhost:3306/testroot123510530com.mysql.jdbc.Driverjdbc:mysql://localhost:3306/testroot123510530
4.package com.csdn.hbsi.utils;
import com.mchange.v2.c3p0.ComboPooledDataSource;
public class DBManager {
private static ComboPooledDataSource ds=null;
static{
ds = new ComboPooledDataSource();
}
public static ComboPooledDataSource getDataSource(){
return ds;
}
}
package com.csdn.hbsi.domain;
public class User {
private int id;
private String name;
private double price;
private String author;
private String description;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getPrice() {
return price;
}
public void setPrice(double price) {
this.price = price;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
}
2.package com.csdn.hbsi.demo;
import java.sql.SQLException;
import java.util.List;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.ResultSetHandler;
import org.apache.commons.dbutils.handlers.BeanHandler;
import org.apache.commons.dbutils.handlers.BeanListHandler;
import org.junit.Test;
import com.csdn.hbsi.domain.User;
import com.csdn.hbsi.utils.DBManager;
public class demo_crud {
@Test
public void insert() throws SQLException {
QueryRunner runner = new QueryRunner(DBManager.getDataSource());
String sql = "insert into book(id,name,price,author,description) values(?,?,?,?,?)";
Object params[] = { 5, "cc", "66", "cccc", "dd" };
runner.update(sql, params);
}
@Test
public void update() throws SQLException {
QueryRunner runner = new QueryRunner(DBManager.getDataSource());
String sql = "update book set name=? where id=?";
Object params[] = { "eeee", 3 };
runner.update(sql, params);
}
@Test
public void delete() throws SQLException {
QueryRunner runner = new QueryRunner(DBManager.getDataSource());
String sql = "delete from book where id=?";
Object params[] = { 3 };
runner.update(sql, params);
}
@SuppressWarnings("deprecation")
@Test
public void find() throws SQLException {
QueryRunner runner = new QueryRunner(DBManager.getDataSource());
String sql="select * from book where id=?";
User user=(User) runner.query(sql, 1, new BeanHandler(User.class));
System.out.println(user);
}
@Test
public void findall() throws SQLException {
QueryRunner runner = new QueryRunner(DBManager.getDataSource());
String sql="select * from book";
List list=(List) runner.query(sql, new BeanListHandler(User.class));
System.out.println(list.size());
}
}
3.配置文件
com.mysql.jdbc.Driverjdbc:mysql://localhost:3306/testroot123510530com.mysql.jdbc.Driverjdbc:mysql://localhost:3306/testroot123510530
4.package com.csdn.hbsi.utils;
import com.mchange.v2.c3p0.ComboPooledDataSource;
public class DBManager {
private static ComboPooledDataSource ds=null;
static{
ds = new ComboPooledDataSource();
}
public static ComboPooledDataSource getDataSource(){
return ds;
}
}
相关文章推荐
- c3p0连接数据库失败No suitable driver
- Spring4.1使用c3p0加载配置文件连接数据库,Access denied for user 'root'@'localhost' 错误!
- 【Spring】基于c3p0连接池,实现数据库加解密连接MySQL数据库
- 这样在一个sql里完成更新和插入,只用一次数据库连接,效率提高了
- 使用PropertyGrid完成数据库连接字符串的设置
- 用C3P0建立server与数据库的连接
- 使用c3p0连接数据库、操作数据库和数据库的事务管理,基于mybatis框架
- 数据库连接的两种实现方式(读取配置文件)——DBCP&C3P0;DBCP实现连接代码,C3P0实现连接代码——包含完整代码
- c3p0连接数据库时报错,连接不上Communications link failure
- c3p0连接数据库
- 关于hibernate 利用c3p0连接mysql 数据库
- RAC 数据库安装完成后,使用sql连接 提示连接到一个空实例
- 用反射完成学生管理系统(包括数据库连接)
- c3p0数据源连接数据库
- 使用C3P0改造JDBC对数据库的连接
- 数据库连接监控组件,避免日常开发中因为数据库连接长时间占用或业务完成后忘记关闭连接所带来的数据库问题
- spring + hibernate + c3p0 数据库连接用完问题排查
- 连接命令层:BtuDatabaseControl组件完成数据库的无缝连接与命令执行(.net),含使用说明及组件下载
- struts2.X心得2--第一个struts2案例分析以及整合c3p0连接数据库案例分析
- ThinkPHP通过DSN方式和数组传参的方式完成与数据库的连接