springboot---【jdbc】数据库连接池
环境需求:eclipse(springboot,Tomcat,maven)和MySQL数据库
1.首先配置pom文件和application.yml文件
application.yml
server:port: 8080
spring:datasource:url: jdbc:mysql://localhost:3306/test_1?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useUnicode=truepassword: rootusername: root
#useUnicode 允许使用自定义字符编码
pom.xml
:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.3.4.RELEASE</version><relativePath /> <!-- lookup parent from repository --></parent><groupId>com.example</groupId><artifactId>demo</artifactId><version>0.0.1-SNAPSHOT</version><name>demo</name><description>Demo project for Spring Boot</description><properties><java.version>1.8</java.version></properties><dependencies><!-- mysql --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope></dependency><!-- Java Persistence API --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId></dependency><!-- thymeleaf --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><!-- web --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web-services</artifactId></dependency><!-- websocket --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId></dependency><!-- mybatis --><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.1.3</version></dependency><!-- 数据库连接池jar包坐标 --><dependency><groupId>commons-dbcp</groupId><artifactId>commons-dbcp</artifactId><version>1.4</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>
2.插入数据库数据
create database test_1 character set utf8; use test_1; create table user(
id int primary key auto_increment,
username varchar(10),
password varchar(10)); insert into user values(null,'libai','123456'),(null,'tom','admin');
3.添加以下文件
代码如下:
User.class
package com.example.demo.entity;import java.sql.Date;
import javax.persistence.Entity;
import javax.persistence.Table;@Entity
@Table(name="user")
public class User implements java.io.Serializable{private long id;private String Username;private String Password;private Date createdate;public User() {}public long getId() {return id;}public void setId(long id) {this.id = id;}public String getUsername() {return Username;}public void setUsername(String username) {Username = username;}public String getPassword() {return Password;}public void setPassword(String password) {Password = password;}public Date getCreatedate() {return createdate;}public void setCreatedate(Date createdate) {this.createdate = createdate;}}
DBUtils
package com.example.demo;
import java.io.InputStream;
import java.sql.Connection;
import java.util.Properties;import org.apache.commons.dbcp.BasicDataSource;
public class DBUtils {//DBCP连接池(BasicDataSource类)private static BasicDataSource ds;static {Properties p=new Properties();InputStream ips=DBUtils.class.getClassLoader().getResourceAsStream("application.yaml");try {p.load(ips);} catch (Exception e) {// TODO: handle exceptione.printStackTrace();}String driver=p.getProperty("driver");String url=p.getProperty("url");String username = p.getProperty("username");String password = p.getProperty("password");//创建数据库连接池对象ds = new BasicDataSource();//设置数据库连接信息ds.setDriverClassName(driver);ds.setUrl(url);ds.setUsername(username);ds.setPassword(password);//设置初始连接数量ds.setInitialSize(3);//设置最大连接数量ds.setMaxActive(10000); }public static Connection getConn()throws Exception {//从连接池中获取连接 抛异常Connection conn = ds.getConnection();return conn;}
}
DemoApplication
package com.example.demo;import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class DemoApplication {public static void main(String[] args) {SpringApplication.run(DemoApplication.class, args);//获取连接try (Connection conn=DBUtils.getConn();) {//创建SQL执行对象Statement stat = conn.createStatement();String sql = "select username,password from user";ResultSet rs = stat.executeQuery(sql);while(rs.next()) {String name = rs.getString("username");String pw = rs.getString("password");System.out.println("账号:"+name+"---密码:"+pw);}} catch (Exception e) {// TODO: handle exceptione.printStackTrace();}}}
运行结果:
这表明连接成功了。
本人菜鸟一仗,请多多支持!
上传了些专享文件和源码,有兴趣的爱好者 请点击头像首页进行下载
springboot---【jdbc】数据库连接池相关推荐
- Spring JDBC数据库连接池设置
对于任何Java应用程序而言, 在Spring框架中设置JDBC数据库连接池都是很容易的,仅需更改spring配置文件中的一些配置即可.使用Apache Commons DBCP和Commons Po ...
- java jdbc init_Java 的JDBC 数据库连接池实现方法
虽然 J2EE 程序员一般都有现成的应用服务器所带的JDBC 数据库连接池,不过对于开发一般的 Java Application . Applet 或者 JSP.velocity 时,我们可用的JDB ...
- Java jdbc数据库连接池
1. 引言 近年来,随着Internet/Intranet建网技术的飞速发展和在世界范围内的迅速普及,计算机 应用程序已从传统的桌面应用转到Web应用.基于B/S(Browser/Server)架构的 ...
- JDBC数据库连接池练习题
<JDBC数据库连接池练习题> 文章目录 单选题 多选题 判断题 填空题 单选题 1. 下面选项中,能够将游标从当前位置向下移一行的方法是( ). A.next() B.absolute( ...
- springboot+dbcp数据库连接池
springboot+dbcp数据库连接池 1,连接池配置文件 2,连接工具类 3,测试类测试连接 4,实际调用连接去同步数据 1,连接池配置文件 在resources目录下添加文件dbcp.prop ...
- SpringBoot 默认数据库连接池 HikariCP
目录 引言 1.问题描述 2.SpringBoot默认的数据库连接池 3.HikariCP是什么 4.测试依赖 5.配置文件 5.1.数据库连接参数 5.2.连接池数据基本参数 5.3.连接检查参数 ...
- SpringBoot 整合 数据库连接池(Druid、HicariCP、C3P0等等)
作者:大三的土狗 专栏:SpringBoot入门到精通 快速导航 前言 1.连接池介绍 2.HicariCP 1)导入坐标 2)修改配置 3)优势 3.Druid 1)导入坐标 2)修改配置 3)优势 ...
- SpringBoot的数据库连接池
一.前言 开发web项目,我们肯定会和数据库打交道,因此就会涉及到数据库链接的问题.在以前我们开发传统的SSM结构的项目时进行数据库链接都是通过JDBC进行数据链接,我们每和数据库打一次交道都需要先获 ...
- springboot配置数据库连接池hikari
Springboot2.0以后默认数据库连接池选择了Hikari(性能高)开源地址:https://github.com/brettwooldridge/HikariCP 里面有技术文档 性能方面 h ...
- JDBC 数据库连接池(JDBCUtils工具类)
文章目录 前言 一.JDBC作用? 二.获取数据的连接方式 三.Statement/PreStatement执行sql 四.ResultSet结果集 五.JDBC相关API 六.事务 七.批处理 八. ...
最新文章
- 网页显示UIWebView(一个)
- 图像处理:边缘提取算法(边缘提取算子总结)——Matlab代码实现
- 大数据时代第一部分思维导图_大数据时代总结思维导图模板分享
- EPSON TCP/IP 通信
- 【公告】社区周刊即日起停刊
- 【Python CheckiO 题解】The Most Numbers
- LeetCode 835. 图像重叠
- ajax实现局部删除,Express+AdminLTE+hbs+Ajax实现局部刷新终极版(第二部分)
- 真正的OKR是什么?
- mysql中视图和表的区别及联系_MySQL中Update、select联用操作单表、多表,及视图与临时表的区别...
- ionic4 背景设置动态图片报错WARNING: sanitizing unsafe style value background-image:url
- rust怎么建柱子_小报:捷达VS5安全带卡扣向里?敲B柱?怎么掰回来? 第191220期...
- Source Code Pro字体在Notepad++和sublime编辑器上的设置
- 圣思园 java_圣思园Java8新特性及实战视频教程 下载
- 新浪sae php,PHP+新浪微博开放平台+新浪云平台(SAE)1
- ps html 优化,photoshop越用越卡的解决方法,ps性能优化教程
- 王者荣耀AI绝悟完全体对战开启:英雄随便选,论文已被NeurIPS收录
- 【无标题】输入圆锥体半径r以及高度h,并计算它的体积。
- Java数组的复制、扩容、删除
- LeetCode #179 - Largest Number
热门文章
- java enumset_java.util.EnumSet.allOf()方法和实例的学习
- “对技术没有好奇心”真的是很失败的一件事情
- php curl 批量,PHP实现的curl批量请求操作
- python imshow彩色_python中plt.imshow与cv2.imshow显示颜色问题
- 学习响应式BootStrap来写融职教育网站,Bootsrtap第十三天讲师列表栏目
- 会计学研究生课程有计算机吗,2018考研:会计专业有哪些研究方向?
- 时间控制插件调用接口
- 记录一个需求:折线图,要求指定年份每一天的记录
- AI:IPPR的数学表示-CNN基本结构分析( Conv层、Pooling层、FCN层/softmax层)
- C++ Rand()各种实现