• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

SpringBoot快速配置数据源的方法

springboot 搞代码 4年前 (2022-01-05) 31次浏览 已收录 0个评论

这篇文章主要介绍了SpringBoot快速配置数据源的方法,帮助大家更好的理解和使用springboot框架,感兴趣的朋友可以了解下

SpringBoot如何快速配置数据源;有如下两种方式:

  1. 通过spring-boot-starter-jdbc快速配置数据源
  2. 自定义数据源DataSource

首先我们需要明确数据源DataSource有什么作用:

  1. 通过DataSource可以获取数据库连接Connection
  2. 通过DataSource创建JdbcTemplate操作数据库

实际项目中,我们在配置数据源的时候会指定数据库连接池,比如流行的Hikari(spring默认的数据库连接池)、C3p0、Dbcp2以及阿里巴巴的Druid。

一、使用数据库连接池

应用在操作数据库的时候,直接从数据库连接池获取连接,而不需要每次创建新的连接。

至于数据库连接池的好处,总结就是: 应用创建和销毁连接的代价是很大的,使用数据库连接池可以很好的复用连接,节省开销,方便管理,简化开发。

可能有些场景我们不想使用SpringBoot JDBC默认的数据源,我需要引入数据库连接池,然后自定义数据源,指定数据源类型。

下面以Dbcp2数据库连接池配置数据源为例。

二、配置依赖

引入dbcp2的数据库连接池已经相关依赖。

 <!-- dbcp2数据库连接池 --> org.apache.commonscommons-dbcp22.7.0<!--数据库驱动--> mysqlmysql-connector-java8.0.18<!-- 提供操作数据库的标准口径 --> org.springframeworkspring-jdbc5.2.2.RELEASEcompile

三、编写配置项

在application.properties文件中配置数据库连接属性。

 customize.datasource.url=jdbc:mysql://localhost:3306/blue?serverTimezone=UTC customize.datasource.username=root customize.datasource.password=wan4380797 customize.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

四、自定义DataSource

 import org.apache.commons.dbcp2.BasicDataSource; @Configuration public class Dbcp2DataSource { @Bean("myDbcp2DataSource") @ConfigurationProperties(prefix = "customize.datasource") public DataSource getDataSource(){ return DataSourceBuilder.create().type(BasicDataSource.class).build(); } }

这边我们可以看到我们创建的DataSource类型为BasicDataSource类型的。并且BasicDataSource来源于之前配置的dbcp2依赖的jar包中。

五、调用验证

下面我们使用junit来验证以下数据源配置的正确与否:

 @SpringBootTest @RunWith(SpringRunner.class) public class JdbcCustomizeDatasourceApplicationTests { @Autowired @Qualifier("myDbcp2DataSource") private DataSource dataSource; @Test public void springJdbcTemplateTest(){ try{ JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource); String queryStr = "select * from student"; List resultList = new ArrayList(); jdbcTemplate.query(queryStr, (ResultSet resultSet)->{ Student student = new Student(); student.setId(resu<div style="color:transparent">来源gaodai.ma#com搞#代!码网</div>ltSet.getString("id")); student.setStudentId(resultSet.getString("student_id")); student.setStudentName(resultSet.getString("student_name")); student.setAge(resultSet.getInt("age")); resultList.add(student); }); resultList.forEach((Student student) -> System.out.println(student)); }catch (Exception exception){ exception.printStackTrace(); } } }

以上就是SpringBoot快速配置数据源的方法的详细内容,更多关于SpringBoot 配置数据源的资料请关注gaodaima搞代码网其它相关文章!

以上就是SpringBoot快速配置数据源的方法的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:SpringBoot快速配置数据源的方法

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址