Driud数据库连接池的使用

简介: Driud数据库连接池的使用

简介:通过代码理解Statement,Statement所白了就是用来执行SQL语句的.

推荐学习路线:JDBC数据库的连接->Connection(数据库连接对象)->Driud数据库连接池的使用->ResultSet->通过PreparedStatement预防SQL注入->JDBC增删改查案例讲解 大家跟着敲完基本就可以JDBC基础毕业了。

Driud数据库连接池的使用

概述

Druid(德鲁伊)

  • Druid连接池是阿里巴巴开源的数据库连接池项目
  • 功能强大,性能优秀,是Java语言最好的数据库连接池之一

配置文件信息

druid.properties

driverClassName=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://localhost:3306/projectdatabase?serverTimezone=GMT%2B8&useOldAliasMetadataBehavior=true
username=root
password=123456
# 初始化连接数量
initialSize=5
# 最大连接数
maxActive=10
# 最大等待时间
maxWait=3000

演示代码

import com.alibaba.druid.pool.DruidDataSourceFactory;
import javax.sql.DataSource;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Properties;
/**
 * JDBC快速入门
 */
public class DruidDemo {
    public static void main(String[] args) throws Exception {
        //1.导入jar包
        //2.定义配置文件
        //3. 加载配置文件
        Properties prop = new Properties();
        prop.load(new FileInputStream("src/druid.properties"));
        //4. 获取连接池对象
        DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);
        //5. 获取数据库连接 Connection
        Connection conn = dataSource.getConnection();
        //3. 定义sql
        String sql = "select * from book";
        //4. 获取执行sql的对象 Statement
        Statement stmt =  conn.createStatement();
        //5. 执行sql
        ResultSet rs = stmt.executeQuery(sql);
//        //6. 处理结果
        while(rs.next()){
            // 获取数据
            String recId = rs.getString(1);
            String title = rs.getString(2);
            String type = rs.getString(3);
            double price = rs.getDouble(4);
            System.out.print(recId + " ");
            System.out.print(title + " ");
            System.out.print(type + " ");
            System.out.println(price);
            System.out.println();
            System.out.println("--------------");
        }
        //7. 释放资源
        stmt.close();
        conn.close();
    }
}
相关文章
|
druid Java 数据库连接
数据库连接池及Druid使用步骤
数据库连接池及Druid使用步骤
1883 2
|
消息中间件 Kafka 容器
【kafka异常】使用Spring-kafka遇到的坑
【kafka异常】使用Spring-kafka遇到的坑
3790 0
|
存储 消息中间件 druid
Druid 架构原理及核心特性详解
Druid 是一个分布式、支持实时多维OLAP分析的列式存储数据处理系统,适用于高速实时数据读取和灵活的多维数据分析。它通过Segment、Datasource等元数据概念管理数据,并依赖Zookeeper、Hadoop和Kafka等组件实现高可用性和扩展性。Druid采用列式存储、并行计算和预计算等技术优化查询性能,支持离线和实时数据分析。尽管其存储成本较高且查询语言功能有限,但在大数据实时分析领域表现出色。
3099 19
|
druid Java
Failed to bind properties under 'spring.datasource' to javax.sql.DataSource:
Failed to bind properties under 'spring.datasource' to javax.sql.DataSource:
1214 0
Failed to bind properties under 'spring.datasource' to javax.sql.DataSource:
|
缓存 NoSQL 架构师
Redis批量查询的四种技巧,应对高并发场景的利器!
在高并发场景下,巧妙地利用缓存批量查询技巧能够显著提高系统性能。 在笔者看来,熟练掌握细粒度的缓存使用是每位架构师必备的技能。因此,在本文中,我们将深入探讨 Redis 中批量查询的一些技巧,希望能够给你带来一些启发。
Redis批量查询的四种技巧,应对高并发场景的利器!
|
JavaScript 前端开发 Java
花了一天时间, 搜刮的个人觉得不错的16套vue3后台管理模版
花了一天时间, 搜刮的个人觉得不错的16套vue3后台管理模版
6987 2
花了一天时间, 搜刮的个人觉得不错的16套vue3后台管理模版
|
运维 网络协议 网络安全
干货 | USG配置端口映射图解&映射不通的排查
干货 | USG配置端口映射图解&映射不通的排查
1241 9
|
druid Java 数据库连接
SpringBoot项目整合MybatisPlus持久层框架+Druid数据库连接池,以及实现增删改查功能
SpringBoot项目整合MybatisPlus和Druid数据库连接池,实现基本的增删改查功能。
1943 0
|
前端开发 容器
bootstrap table 设置自定义列宽
【5月更文挑战第4天】bootstrap table 设置自定义列宽
|
负载均衡 应用服务中间件 测试技术
tomcat 单机反向代理的搭建
tomcat 单机反向代理的搭建