JDBC_Druid 增删改查练习

package com.itheima.example;

import com.alibaba.druid.pool.DruidDataSourceFactory;
import com.itheima.pojo.Brand;
import com.mysql.cj.xdevapi.PreparableStatement;
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;

/**
 * @version 1.0
 * @auter liyang
 */
public class BrandTest {


    @Test
    public void testSelectAll() throws Exception{
        Properties prop= new Properties();
        prop.load(new FileInputStream("D:\\untitled\\jdbc\\jdbc-demo\\src\\druid.properties"));
        //获取连接池对象
        DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);
        //获取数据库链接Connection
        Connection conn=dataSource.getConnection();

        //定义Sql
        String sql="select * from tb_brand;";
        //获取pstmt对象
        PreparedStatement pstmt = conn.prepareStatement(sql);

        //执行sql
        ResultSet rs = pstmt.executeQuery();

        //处理结果LIst<brand>封装Brand对象,装载List集合
        Brand brand=null;
        List<Brand>brands=new ArrayList<>();
        while(rs.next()){
            //获取数据
            int id = rs.getInt("id");
            String brandName = rs.getString("brand_name");
            String company = rs.getString("company_name");
            int ordered = rs.getInt("ordered");
            String description = rs.getString("description");
            int status = rs.getInt("status");
            //封装对象
            brand=new Brand();
            brand.setId(id);
            brand.setBrandName(brandName);
            brand.setOrdered(ordered);
            brand.setDescripthio(description);
            brand.setStatus(status);
            //装载集合
            brands.add(brand);

        }
        System.out.println(brands);

        rs.close();
        pstmt.close();
        conn.close();

    }

    @Test
    public void testAdd() throws Exception{
        //接受页面提交的数据
        String brandName="香飘飘";
        String companyName="香飘飘";
        int ordered=1;
        String description="绕地球一圈";
        int status=1;




        Properties prop= new Properties();
        prop.load(new FileInputStream("D:\\untitled\\jdbc\\jdbc-demo\\src\\druid.properties"));
        //获取连接池对象
        DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);
        //获取数据库链接Connection
        Connection conn=dataSource.getConnection();

        //定义Sql
        String sql="INSERT INTO tb_brand(brand_name,company_name,ordered,description,status) VALUES(?,?,?,?,?);";
        //获取pstmt对象
        PreparedStatement pstmt = conn.prepareStatement(sql);
        //设置参数
        pstmt.setString(1,brandName);
        pstmt.setString(2,companyName);
        pstmt.setInt(3,ordered);
        pstmt.setString(4,description);
        pstmt.setInt(5,status);

        //执行sql
        int count = pstmt.executeUpdate();

        //处理结果
        System.out.println(count>0);


        pstmt.close();
        conn.close();

    }


    //修改
    @Test
    public void testUpdate() throws Exception{
        //接受页面提交的数据
        String brandName="香飘飘";
        String companyName="香飘飘";
        int ordered=10000;
        String description="绕地球三圈";
        int status=1;
        int id=4;




        Properties prop= new Properties();
        prop.load(new FileInputStream("D:\\untitled\\jdbc\\jdbc-demo\\src\\druid.properties"));
        //获取连接池对象
        DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);
        //获取数据库链接Connection
        Connection conn=dataSource.getConnection();

        //定义Sql
        String sql="update tb_brand\n"+
                "    set brand_name=?,\n"+
                "    company_name=?,\n"+
                "       ordered=?,\n"+
                "    description=?,\n"+
                "    status=?\n"+
                "    where  id=?;";
        //获取pstmt对象
        PreparedStatement pstmt = conn.prepareStatement(sql);
        //设置参数
        pstmt.setString(1,brandName);
        pstmt.setString(2,companyName);
        pstmt.setInt(3,ordered);
        pstmt.setString(4,description);
        pstmt.setInt(5,status);
        pstmt.setInt(6,id);

        //执行sql
        int count = pstmt.executeUpdate();

        //处理结果
        System.out.println(count>0);


        pstmt.close();
        conn.close();

    }



    //删除

    @Test
    public void testDeleteById() throws Exception{
        //接受页面提交的数据

        int id=4;
        

        Properties prop= new Properties();
        prop.load(new FileInputStream("D:\\untitled\\jdbc\\jdbc-demo\\src\\druid.properties"));
        //获取连接池对象
        DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);
        //获取数据库链接Connection
        Connection conn=dataSource.getConnection();

        //定义Sql
        String sql="delete from tb_brand where id=?;";
        //获取pstmt对象
        PreparedStatement pstmt = conn.prepareStatement(sql);
        //设置参数

        pstmt.setInt(1,id);

        //执行sql
        int count = pstmt.executeUpdate();

        //处理结果
        System.out.println(count>0);


        pstmt.close();
        conn.close();

    }



}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值