(一)JDBC-工具类使用

(一)JDBC-工具类使用

一、介绍

​ Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。JDBC也是Sun Microsystems的商标。我们通常说的JDBC是面向关系型数据库的。

​ 各种不同类型的数据库都有相应的实现,本文中的代码都是针对MySQL数据库实现的。

二、案例
  1. 测试数据

    create database mydb character set utf8 collate utf8_bin;
    use mydb;
    create table user(
    	id int primary key auto_increment,
    	username varchar(20),
    	password varchar(20),
    	nickname varchar(20),
    	age int
    );
    
    insert into user values (null,'aaa','123','小丽',34);
    insert into user values (null,'bbb','123','大王',32);
    insert into user values (null,'ccc','123','小明',28);
    insert into user values (null,'ddd','123','大黄',21);
    
  2. 新建maven工程导入所需jar包

    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.11</version>
    </dependency>
    

    3.编程db.properties

    driverClassName=com.mysql.jdbc.Driver
    url=jdbc:mysql://localhost:3306/mydb
    username=root
    password=root
    

    4.JDBCUtil

    public class JDBCUtil {
        private static final String driverClassName;
        private static final String url;
        private static final String username;
        private static final String password;
    
        static{
            // 获取属性文件中的内容:
            Properties properties = new Properties();
            try {
                properties.load(new FileInputStream("src/db.properties"));
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
    
            driverClassName=properties.getProperty("driverClassName");
            url=properties.getProperty("url");
            username=properties.getProperty("username");
            password=properties.getProperty("password");
        }
    
        /**
         * 注册驱动的方法
         */
        public static void loadDriver(){
            try {
                Class.forName(driverClassName);
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
            }
        }
    
        /**
         * 获得连接的方法
         */
        public static Connection getConnection(){
            Connection conn = null;
            try{
                // 将驱动一并注册:
                loadDriver();
                // 获得连接
                conn = DriverManager.getConnection(url,username, password);
            }catch(Exception e){
                e.printStackTrace();
            }
            return conn;
        }
    
        /**
         * 释放资源的方法
         */
        public static void release(Statement stmt,Connection conn){
            if(stmt != null){
                try {
                    stmt.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
    
                stmt = null;
            }
            if(conn != null){
                try {
                    conn.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
                conn = null;
            }
        }
    
        public static void release(ResultSet rs,Statement stmt,Connection conn){
            // 资源释放:
            if(rs != null){
                try {
                    rs.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
    
                rs = null;
            }
            if(stmt != null){
                try {
                    stmt.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
    
                stmt = null;
            }
            if(conn != null){
                try {
                    conn.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
                conn = null;
            }
        }
    }
    
    
    三、测试类

    1.JDBC 开发步骤

    ​ 第一步:加载驱动

    ​ 第二步:获得连接

    ​ 第三步:基本操作

    ​ 第四步:释放资源

     /**
         * 查询操作:使用工具类
         */
        @Test
        public void demo1(){
            Connection conn = null;
            Statement stmt = null;
            ResultSet rs = null;
            try{
                // 获得连接:
                conn = JDBCUtil.getConnection();
                // 创建执行SQL语句的对象:
                stmt = conn.createStatement();
                // 编写SQL:
                String sql = "select * from user";
                // 执行查询:
                rs = stmt.executeQuery(sql);
                // 遍历结果集:
                while(rs.next()){
                    System.out.println(rs.getInt("id")+" "+rs.getString("username")+" "+rs.getString("password"));
                }
            }catch(Exception e){
                e.printStackTrace();
            }finally{
                // 释放资源:
                JDBCUtil.release(rs, stmt, conn);
            }
        }
    }
    
    

    ​ 2.测试结果
    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值