DButils隶属于apache commons,对于一些基本的jdbc操作进行了封装,比之orm要小巧不小,当然功能上弱化很多。
简单demo看看dbutils使用(增删改查):
- publicclassDB{
- privateStringdirverClassName="com.mysql.jdbc.Driver";
- privateStringurl="jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf8";
- privateStringuser="root";
- privateStringpassword="admin";
- staticConnectionconn=null;
- QueryRunnerrunner=null;
- privatevoidgetConnection(){
- try{
- Class.forName(dirverClassName);
- }catch(ClassNotFoundExceptione){
- e.printStackTrace();
- }
- try{
- conn=DriverManager.getConnection(url,user,password);
- runner=newQueryRunner();
- }catch(SQLExceptione){
- e.printStackTrace();
- }
- }
- privatevoidinsert()throwsSQLException{
- intn=runner.update(conn,"insertintoaaa(term)values('你大爷')");
- System.out.println("插入"+n+"条数据!");
- }
- privatevoidfind()throwsSQLException{
- List<Word>list=(List<Word>)runner.query(conn,
- "selectid,termfromaaa",newBeanListHandler(Word.class));
- for(Worduser:list){
- System.out.println(user);
- }
- }
- privatevoiddelete()throwsException{
- runner.update(conn,"deletefromaaawhereid=?",10);
- }
- publicvoidtest()throwsException{
- getConnection();
- //insert();
- find();
- DbUtils.closeQuietly(conn);
- }
- publicstaticvoidmain(String[]args)throwsException{
- DBdb=newDB();
- db.test();
- }
- }
public class DB {
private String dirverClassName = "com.mysql.jdbc.Driver";
private String url ="jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf8";
private String user = "root";
private String password = "admin";
static Connection conn = null;
QueryRunner runner = null;
private void getConnection() {
try {
Class.forName(dirverClassName);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try {
conn = DriverManager.getConnection(url, user, password);
runner = new QueryRunner();
} catch (SQLException e) {
e.printStackTrace();
}
}
private void insert() throws SQLException {
int n = runner.update(conn, "insert into aaa(term) values('你大爷')");
System.out.println("插入" + n + "条数据!");
}
private void find() throws SQLException {
List<Word> list = (List<Word>) runner.query(conn,
"select id,term from aaa", new BeanListHandler(Word.class));
for (Word user : list) {
System.out.println(user);
}
}
private void delete() throws Exception {
runner.update(conn, "delete from aaa where id = ?", 10);
}
public void test() throws Exception {
getConnection();
// insert();
find();
DbUtils.closeQuietly(conn);
}
public static void main(String[] args) throws Exception {
DB db = new DB();
db.test();
}
}
aaa表结构:
- DROPTABLEIFEXISTS`test`.`aaa`;
- CREATETABLE`test`.`aaa`(
- `id`int(10)unsignedNOTNULLAUTO_INCREMENT,
- `term`textNOTNULL,
- PRIMARYKEY(`id`)
- )ENGINE=InnoDBAUTO_INCREMENT=47DEFAULTCHARSET=utf8;
DROP TABLE IF EXISTS`test`.`aaa`;
CREATE TABLE `test`.`aaa` (
`id` int(10) unsigned NOT NULLAUTO_INCREMENT,
`term` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDBAUTO_INCREMENT=47 DEFAULT CHARSET=utf8;
除dbutils.jar外还需要mysql-java的驱动包。