项目实现顺序
1.创建数据库
2.编写数据库表对应的Java对象
3.编写DAO持久层
(1)编写工具类 JdbcUtils
①.获取数据库连接池的连接
②关闭数据库连接池的连接
(2)熟悉使用JdbcUtilsTest
4.编写baseDao
package com.langsin.dao;
import com.langsin.utils.JdbcUtils;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanHandler;
import org.apache.commons.dbutils.handlers.BeanListHandler;
import org.apache.commons.dbutils.handlers.ScalarHandler;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.List;
public abstract class baseDao {
//使用dbUtils操作数据库
private QueryRunner queryRunner=new QueryRunner();
public int update(String sql,Object ... args){
Connection conn= JdbcUtils.getConnection();
try {
return queryRunner.update(conn,sql,args);//这里的args是用来做什么的 应该是要更新的数组
} catch (SQLException throwables) {
throwables.printStackTrace();
}finally {
JdbcUtils.close(conn);
}
return -1;
}
public T queryForOne(Class type,String sql,Object...args){
Connection conn = JdbcUtils.getConnection();
try {
return queryRunner.query(conn,sql,new BeanHandler(type),args);
} catch (SQLException throwables) {
throwables.printStackTrace();
}finally {
JdbcUtils.close(conn);
}
return null;
}
public List queryForList(Class type,String sql,Object...args){
Connection conn = JdbcUtils.getConnection();
try {
return queryRunner.query(conn,sql,new BeanListHandler(type),args);
} catch (SQLException throwables) {
throwables.printStackTrace();
}finally {
JdbcUtils.close(conn);
}
return null;
}
public Object queryForSinglevalue(String sql,Object...args){
Connection conn=JdbcUtils.getConnection();
try {
return queryRunner.query(conn,sql,new ScalarHandler(),args);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}finally {
JdbcUtils.close(conn);
}
}
5.编写UserDao测试
6.判断传入数据并与数据库交互



