DbUtil的介绍使用

DbUtil是apache旗下的一个JDBC封装的开源工具jar包,使用它调用数据库CRUD操作非常简便。
使用DBUtils的优点
无资源泄漏 - DBUtils类确保不会发生资源泄漏。
清理和清除代码 - DBUtils类提供干净清晰的代码来执行数据库操作,而无需编写任何清理或资源泄漏防护代码。
Bean映射 - DBUtils类支持从结果集中自动填充javabeans。

查询示例代码:

package com.hbk.test;

import java.sql.Connection;
import java.sql.DriverManager;
import java.util.List;

import org.apache.commons.dbutils.DbUtils;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanListHandler;

/**
 * DbUtil工具的学习使用
 * 
 * @author 黄宝康 2019年6月11日 上午11:57:52
 */
public class DbUtilTest {

	public static void main(String[] args) throws Exception {
		Connection conn = null;
		try {
			DbUtils.loadDriver("com.mysql.jdbc.Driver");
			QueryRunner queryRunner = new QueryRunner();
			conn = DriverManager.getConnection("jdbc:mysql://192.168.8.220:3306/jfinal_demo","root","");
			List lists =queryRunner.query(conn, "select * from blog", new BeanListHandler(Blog.class));
			for(Blog obj : lists){
				System.out.println("id = "+obj.getId()+" title="+obj.getTitle()+" content="+obj.getContent());
			}
		} catch (Exception e) {
			e.printStackTrace();
		}finally{
			DbUtils.close(conn);
		}
	}
}

package com.hbk.test;

public class Blog {
	private int id;
	private String title;
	private String content;
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getTitle() {
		return title;
	}
	public void setTitle(String title) {
		this.title = title;
	}
	public String getContent() {
		return content;
	}
	public void setContent(String content) {
		this.content = content;
	}
	
	
}

工程架构图
DbUtil的介绍使用_第1张图片
DbUtil的介绍使用_第2张图片
运行结果:

id = 3 title=test 2 content=test 2
id = 4 title=test 3 content=test 3
id = 5 title=333333  content=test 4
id = 9 title=eeeee content=eeeeeee
id = 10 title=d content=ddd
id = 11 title=fgfgfgfg content=rgr
id = 12 title=fgffgf content=fgfdgfdgdf
id = 14 title=hhh content=hhhhhhhhh
id = 15 title=ggggggg content=ddddddddddddd
id = 16 title=rr content=rrr
id = 17 title=dddd content=dddddd

插入示例:

package com.hbk.test;

import java.sql.Connection;
import java.sql.DriverManager;

import org.apache.commons.dbutils.DbUtils;
import org.apache.commons.dbutils.QueryRunner;

/**
 * DbUtil工具的学习使用
 * 
 * @author 黄宝康 2019年6月11日 上午11:57:52
 */
public class DbUtilTest {

	public static void main(String[] args) throws Exception {
		Connection conn = null;
		try {
			DbUtils.loadDriver("com.mysql.jdbc.Driver");
			QueryRunner queryRunner = new QueryRunner();
			conn = DriverManager.getConnection("jdbc:mysql://192.168.8.220:3306/jfinal_demo","root","");
			int num = queryRunner.update(conn, "insert into blog(title,content) values(?,?)","标题","内容");//主键自增
			System.out.println(num+"条数据已插入!");
		}finally{
			DbUtils.close(conn);
		}
	}
}

运行程序,确实已成功插入。
DbUtil的介绍使用_第3张图片
更新示例:

package com.hbk.test;

import java.sql.Connection;
import java.sql.DriverManager;

import org.apache.commons.dbutils.DbUtils;
import org.apache.commons.dbutils.QueryRunner;

/**
 * DbUtil工具的学习使用
 * 
 * @author 黄宝康 2019年6月11日 上午11:57:52
 */
public class DbUtilTest {

	public static void main(String[] args) throws Exception {
		Connection conn = null;
		try {
			DbUtils.loadDriver("com.mysql.jdbc.Driver");
			QueryRunner queryRunner = new QueryRunner();
			conn = DriverManager.getConnection("jdbc:mysql://192.168.8.220:3306/jfinal_demo","root","");
			int num = queryRunner.update(conn, "update blog set title=? where content='内容'","新标题");
			System.out.println(num+"条数据更新!");
		}finally{
			DbUtils.close(conn);
		}
	}
}

运行程序,确实更新了
DbUtil的介绍使用_第4张图片
删除示例:

package com.hbk.test;

import java.sql.Connection;
import java.sql.DriverManager;

import org.apache.commons.dbutils.DbUtils;
import org.apache.commons.dbutils.QueryRunner;

/**
 * DbUtil工具的学习使用
 * 
 * @author 黄宝康 2019年6月11日 上午11:57:52
 */
public class DbUtilTest {

	public static void main(String[] args) throws Exception {
		Connection conn = null;
		try {
			DbUtils.loadDriver("com.mysql.jdbc.Driver");
			QueryRunner queryRunner = new QueryRunner();
			conn = DriverManager.getConnection("jdbc:mysql://192.168.8.220:3306/jfinal_demo","root","");
			int num = queryRunner.update(conn, "delete from blog where content='内容'");
			System.out.println(num+"条数据已删除!");
		}finally{
			DbUtils.close(conn);
		}
	}
}

运行程序,content为内容的数据确实被删除了。

你可能感兴趣的:(代码封装,工具类)