引包
准备druid.properties文件
随便放个位置,如resource下的某个文件夹中:
driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/jdbc?useSSL=false&useServerPreStmts=true
username=root
password=root123
# 初始化连接数量
initialSize=5
# 最大连接数
maxActive=10
# 最大等待时间
maxWait=3000
写测试demo
查询
Properties prop = new Properties();
//读取配置文件 配置文件路径选择以项目根目录路径开头的路径
prop.load(new FileInputStream("NativeMybatis/src/main/resources/com/kdy/druid.properties"));
//获取连接池对象
DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);
//获取连接
Connection conn = dataSource.getConnection();
System.out.println(conn);
String sql = "select * from users;";
PreparedStatement pstmt = conn.prepareStatement(sql);
ResultSet rs = pstmt.executeQuery();
ArrayList<User> userList = new ArrayList<>();
while (rs.next()){
User user = new User();
user.setId(rs.getInt(1));
user.setName(rs.getString(2));
user.setPassword(rs.getString(3));
user.setEmail(rs.getString(4));
user.setBirthday(rs.getDate(5));
user.setInfoId(rs.getInt(6));
userList.add(user);
}
Iterator<User> iterator = userList.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next());
}
conn.close();
pstmt.close();
新增
public class DruidDemoTest {
@Test
public void druidDemoTest() throws Exception {
String inputName = "sunwukong";
String inputPassword = "123456";
String email = "2138@qq.com";
String birthday = "2001-02-21";
String infoId = "6";
int inputInfoId = Integer.valueOf(infoId);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date inputBirthday = sdf.parse(birthday);
Properties prop = new Properties();
//读取配置文件 配置文件路径选择以不包含项目根目录路径开头的路径
prop.load(new FileInputStream("src/main/resources/com/kdy/druid.properties"));
//获取连接池对象
DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);
//获取连接
Connection conn = dataSource.getConnection();
System.out.println(conn);
String sql = "insert into users (name,password,email,birthday,infoId) values(?,?,?,?,?);";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1,inputName);
pstmt.setString(2,inputPassword);
pstmt.setString(3,email);
pstmt.setDate(4,new java.sql.Date(inputBirthday.getTime()));
pstmt.setInt(5,inputInfoId);
int count = pstmt.executeUpdate();
System.out.println(count);
conn.close();
pstmt.close();
}
}
修改
@Test
public void druidDemoTest() throws Exception {
String inputName = "sunwukong";
String inputPassword = "hello123456";
Properties prop = new Properties();
//读取配置文件 配置文件路径选择以项目根目录路径开头的路径
prop.load(new FileInputStream("src/main/resources/com/kdy/druid.properties"));
//获取连接池对象
DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);
//获取连接
Connection conn = dataSource.getConnection();
System.out.println(conn);
String sql = "update users set password = ? where name = ?;";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1,inputPassword);
pstmt.setString(2,inputName);
int count = pstmt.executeUpdate();
System.out.println(count);
conn.close();
pstmt.close();
}
删除
@Test
public void druidDemoTest() throws Exception {
Properties prop = new Properties();
//读取配置文件 配置文件路径选择以项目根目录路径开头的路径
prop.load(new FileInputStream("src/main/resources/com/kdy/druid.properties"));
//获取连接池对象
DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);
//获取连接
Connection conn = dataSource.getConnection();
System.out.println(conn);
String sql = "delete from users where id = ?;";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setInt(1,5);
int count = pstmt.executeUpdate();
System.out.println(count);
conn.close();
pstmt.close();
}