0
点赞
收藏
分享

微信扫一扫

使用druid数据库连接池查询数据库中的数据

炽凤亮尧 2022-03-12 阅读 60

 核心代码:


import com.alibaba.druid.pool.DruidDataSourceFactory;
import com.itheima.pojo.Account;

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.Properties;

public class DruidExample {
    public static void main(String[] args) throws Exception {
        /*加载配置文件*/
        Properties prop = new Properties();
        prop.load(new FileInputStream("jdbc-demo/src/druid.properties"));

//        查看配置路径该怎么配
//        System.out.println(System.getProperty("user.dir"));

        /*获取连接池对象*/
        DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);

        /*获取数据库连接*/
        Connection connection = dataSource.getConnection();

        /*定义sql语句*/
        String sql = "select * from account";

        /*获取PreparedStatement对象*/
        PreparedStatement preparedStatement =  connection.prepareStatement(sql);

        /*执行sql*/
        ResultSet resultSet = preparedStatement.executeQuery();

        /*处理数据,将数据添入集合*/
       ArrayList<Account> accounts = new ArrayList<>();
        while (resultSet.next()){
            Account account = new Account();
            account.setId(resultSet.getInt("id"));
            account.setName(resultSet.getString("name"));
            account.setMoney(resultSet.getDouble("money"));
            accounts.add(account);
        }

        /*输出数据*/
        System.out.println(accounts);

        /*关闭资源*/
        resultSet.close();
        preparedStatement.close();
        connection.close();
    }
}

 druid.properties文件配置内容:

driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql://127.0.0.1/db1?useSSL=false&useServerPrepStmts=true&characterEncoding=utf8
username=root
password=root
initialSize=5
maxActive=10
maxWait=3000

Account类: 


public class Account {
    private int id;
    private String name;
    private double money;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public double getMoney() {
        return money;
    }

    public void setMoney(double money) {
        this.money = money;
    }

    @Override
    public String toString() {
        return "Account{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", money=" + money +
                '}';
    }
}

 

举报

相关推荐

0 条评论