dbUtil的简单使用

来源:互联网 发布:autodesk软件下载 编辑:程序博客网 时间:2024/05/16 18:45

1. 配置maven依赖:

<dependency>  
   <groupId>commons-dbutils</groupId>  
   <artifactId>commons-dbutils</artifactId>  
   <version>1.5</version>  
</dependency>


2. 获取数据库连接:

public static QueryRunner getQueryRunner(){
        if(DBUtil.dataSource==null){
            BasicDataSource dbcpDataSource = new BasicDataSource();
            dbcpDataSource.setUrl("jdbc:mysql://localhost:3306/vcooline_test?useUnicode=true&characterEncoding=UTF-8");
            dbcpDataSource.setDriverClassName("com.mysql.jdbc.Driver");
            dbcpDataSource.setUsername("root");
            dbcpDataSource.setPassword("1234");
            dbcpDataSource.setDefaultAutoCommit(true);
            dbcpDataSource.setMaxActive(100);
            dbcpDataSource.setMaxIdle(30);
            dbcpDataSource.setMaxWait(500);
            DBUtil.dataSource = (DataSource)dbcpDataSource;
        }
        return new QueryRunner(DBUtil.dataSource);
    }


3. 相关的增删改查:

public static int insert(String sql){
QueryRunner queryRunner = DBUtil.getQueryRunner();
int _ret = 0;
try {
_ret = queryRunner.update(sql);
} catch (SQLException e) {
e.printStackTrace();
}
return _ret;
};

public static int update(String name,String address,Integer age,String id){
String sql = "UPDATE dbuser_test SET name=?,address=?,age=?,updated_at=NOW() WHERE id=?";
QueryRunner queryRunner = DBUtil.getQueryRunner();
int _ret = 0;
try {
_ret = queryRunner.update(sql, name, address, age, id);
} catch (SQLException e) {
e.printStackTrace();
}
return _ret;
};

public static DbUserTest query(String id){
String sql = "SELECT * FROM dbuser_test WHERE id=?";
QueryRunner queryRunner = DBUtil.getQueryRunner();
DbUserTest dbUserTest = null;
try {
dbUserTest = queryRunner.query(sql, new BeanHandler<DbUserTest>(DbUserTest.class), id);
} catch (SQLException e) {
e.printStackTrace();
}
return dbUserTest;
};

public static int[] insertParams(String sql, Object[][] params){
QueryRunner queryRunner = DBUtil.getQueryRunner();
int[] _ret = {};
try {
_ret = queryRunner.batch(sql, params);
} catch (SQLException e) {
e.printStackTrace();
}
return _ret;
};


public static void main(String[] args) {
// int _ret = insert("INSERT INTO dbuser_test VALUES('9','liu8','上海',28,NOW(),NOW(),0)");

// Object[][] params = new Object[][]{{"12","liu12","上海",30},{"13","liu13","上海13",32}};
// int[] _ret = insertParams("INSERT INTO dbuser_test VALUES(?,?,?,?,NOW(),NOW(),0)", params);
// for (int i = 0; i < _ret.length; i++) {
// System.out.println(i + ":" + _ret[i]);
// }

// int _ret = update("aa", "aa", 33, "1");
// System.out.println(_ret);

DbUserTest dbUserTest = query("2");
System.out.println(dbUserTest.getName());
}



4. 关联实体:

public class DbUserTest implements Serializable {
private static final long serialVersionUID = 306532429926930513L;
private String id; // id
private String name; // 名字
private String address; // 地址
private Integer age; // 年龄
private Date created_at; // 创建时间
private Date updated_at; // 修改时间
private Integer status; // 状态

       //setter,getter方法

}

0 0