spring boot整合jdbc访问数据库

目的:
整合jdbc,成功访问mysql数据库。

idea版本:2020.2
springboot:2.3.2
mysql:8.0后
jdk:1.8

一、新建springboot项目

1.新建项目时勾选的资源有:web、jdbc(自动配数据源)、mysql(数据驱动)
2.查看pom.xml中导入的依赖并加载依赖
(以下我的项目创建后导入的所有依赖)

	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-jdbc</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>

		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<scope>runtime</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
			<exclusions>
				<exclusion>
					<groupId>org.junit.vintage</groupId>
					<artifactId>junit-vintage-engine</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<scope>test</scope>
		</dependency>
	</dependencies>

二、启动数据库

三、与数据库交互的相关配置

在全局配置文件中配置以下内容(以下是springboot2.3.2,.yml文件的配置方式)

spring:
  datasource:
    username: root
    password: '123456'
    url: jdbc:mysql://localhost:3306/jdbc?serverTimezone=UTC
    driver-class-name: com.mysql.cj.jdbc.Driver

注意点:
1、根据yml语法,password需要加单引号;
2、springboot2.0后,url需设置时区“?serverTimezone=UTC”
3、驱动名为:com.mysql.cj.jdbc.Driver

url: jdbc:mysql://localhost:3306/jdbc?serverTimezone=UTC

jdbc:连接方式
mysql:数据库类型
localhost:本地ip
3306:数据库端口号
jdbc:数据库名
?serverTimezone=UTC:时区

四、连接测试

在ApplicationTests类中:

@RunWith(SpringRunner.class)
@SpringBootTest
class Demo3ApplicationTests {

	@Autowired
	DataSource dataSource;//注入数据源

	@Test
	public void contextLoads() throws SQLException {
		System.out.println(dataSource.getClass());//查看容器中注入的数据源类型

		Connection connection = dataSource.getConnection();//从数据源中获取连接
		System.out.println(connection);
		connection.close();
	}

}

在控制台查看数据源类型,以及是否获取到了连接。springboot2.0后,底层默认使用的是hikari连接池,而不是tomcat了,所以这里打印的数据源以及获取的连接为:

数据源:class com.zaxxer.hikari.HikariDataSource

获取的连接:HikariProxyConnection@850429804 wrapping com.mysql.cj.jdbc.ConnectionImpl@2aaf152b

备注:数据源的相关配置都在DataSourceProperties类里面,可查看源码,了解自己使用版本的配置规则

如果反复尝试都访问不成功,建议重新建一个项目,完全按照这个流程再尝试一遍

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值