5.22总结
package com.mf.jdbc.exmaple;
import com.alibaba.druid.pool.DruidDataSourceFactory;
import com.mf.jdbc.Brand;
import org.junit.Test;
import javax.sql.DataSource;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;
/**
-
品牌数据的增删改查操作
*/
public class BrandTest {/**
- 查询所有
-
- SQL:select * from tb_brand;
-
- 参数:不需要
-
- 结果:List
*/
- 结果:List
@Test
public void testSelectAll() throws Exception {
//1. 获取Connection
//3. 加载配置文件
Properties prop = new Properties();
prop.load(new FileInputStream("./src/druid.properties"));
//4. 获取连接池对象
DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);//5. 获取数据库连接 Connection
Connection conn = dataSource.getConnection();//2. 定义SQL
String sql = "select * from tb_brand;";//3. 获取pstmt对象
PreparedStatement pstmt = conn.prepareStatement(sql);//4. 设置参数
//5. 执行SQL
ResultSet rs = pstmt.executeQuery();//6. 处理结果 List
封装Brand对象,装载List集合
Brand brand = null;
Listbrands = new ArrayList<>();
while (rs.next()){
//获取数据
int id = rs.getInt("id");
String brandName = rs.getString("brand_name");
String companyName = rs.getString("company_name");
int ordered = rs.getInt("ordered");
String description = rs.getString("description");
int status = rs.getInt("status");
//封装Brand对象
brand = new Brand();
brand.setId(id);
brand.setBrandName(brandName);
brand.setCompanyName(companyName);
brand.setOrdered(ordered);
brand.setDescription(description);
brand.setStatus(status);//装载集合
brands.add(brand);}
System.out.println(brands);
//7. 释放资源
rs.close();
pstmt.close();
conn.close();}
/**
- 添加
-
- SQL:insert into tb_brand(brand_name, company_name, ordered, description, status) values(?,?,?,?,?);
-
- 参数:需要,除了id之外的所有参数信息
-
- 结果:boolean
*/
- 结果:boolean
@Test
public void testAdd() throws Exception {
// 接收页面提交的参数
String brandName = "香飘飘";
String companyName = "香飘飘";
int ordered = 1;
String description = "绕地球一圈";
int status = 1;//1. 获取Connection
//3. 加载配置文件
Properties prop = new Properties();
prop.load(new FileInputStream("./src/druid.properties"));
//4. 获取连接池对象
DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);//5. 获取数据库连接 Connection
Connection conn = dataSource.getConnection();//2. 定义SQL
String sql = "insert into tb_brand(brand_name, company_name, ordered, description, status) values(?,?,?,?,?);";//3. 获取pstmt对象
PreparedStatement pstmt = conn.prepareStatement(sql);//4. 设置参数
pstmt.setString(1,brandName);
pstmt.setString(2,companyName);
pstmt.setInt(3,ordered);
pstmt.setString(4,description);
pstmt.setInt(5,status);//5. 执行SQL
int count = pstmt.executeUpdate(); // 影响的行数
//6. 处理结果
System.out.println(count > 0);//7. 释放资源
pstmt.close();
conn.close();}
/**
- 修改
-
- SQL:
update tb_brand
set brand_name = ?,
company_name= ?,
ordered = ?,
description = ?,
status = ?
where id = ?-
- 参数:需要,所有数据
-
- 结果:boolean
*/
- 结果:boolean
@Test
public void testUpdate() throws Exception {
// 接收页面提交的参数
String brandName = "香飘飘";
String companyName = "香飘飘";
int ordered = 1000;
String description = "绕地球三圈";
int status = 1;
int id = 4;//1. 获取Connection
//3. 加载配置文件
Properties prop = new Properties();
prop.load(new FileInputStream("jdbc-demo/src/druid.properties"));
//4. 获取连接池对象
DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);//5. 获取数据库连接 Connection
Connection conn = dataSource.getConnection();//2. 定义SQL
String sql = " update tb_brand\n" +
" set brand_name = ?,\n" +
" company_name= ?,\n" +
" ordered = ?,\n" +
" description = ?,\n" +
" status = ?\n" +
" where id = ?";//3. 获取pstmt对象
PreparedStatement pstmt = conn.prepareStatement(sql);//4. 设置参数
pstmt.setString(1,brandName);
pstmt.setString(2,companyName);
pstmt.setInt(3,ordered);
pstmt.setString(4,description);
pstmt.setInt(5,status);
pstmt.setInt(6,id);//5. 执行SQL
int count = pstmt.executeUpdate(); // 影响的行数
//6. 处理结果
System.out.println(count > 0);//7. 释放资源
pstmt.close();
conn.close();}
/**
- 删除
-
- SQL:
delete from tb_brand where id = ?
-
- 参数:需要,id
-
- 结果:boolean
*/
- 结果:boolean
@Test
public void testDeleteById() throws Exception {
// 接收页面提交的参数int id = 4;
//1. 获取Connection
//3. 加载配置文件
Properties prop = new Properties();
prop.load(new FileInputStream("jdbc-demo/src/druid.properties"));
//4. 获取连接池对象
DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);//5. 获取数据库连接 Connection
Connection conn = dataSource.getConnection();//2. 定义SQL
String sql = " delete from tb_brand where id = ?";//3. 获取pstmt对象
PreparedStatement pstmt = conn.prepareStatement(sql);//4. 设置参数
pstmt.setInt(1,id);
//5. 执行SQL
int count = pstmt.executeUpdate(); // 影响的行数
//6. 处理结果
System.out.println(count > 0);//7. 释放资源
pstmt.close();
conn.close();}
}

浙公网安备 33010602011771号