1.搭建项目环境-省略
创建表
CREATE
修改POM文件,添加相关依赖
2 配置数据源 ---最终优化后的版本(尾部为优化推演过程)
2.1添加Druid数据源依赖
在application.properties中添加数据库连接信息
创建配置类,在启动时加载配置信息和数据源
2 通过SpringBoot配置文件配置数据源
在Spring Boot1.x 版本中的spring-boot-starter-jdbc 启动器中默认使用的是
org apache.tomcat.jdbc pool.DataSource作为数据源
♥在Spring Boot2.x 版本中的spring-boot-starter-jdbc 启动器中默认使用的是
com.zaxxer hikariDataSource作为数据源(效率高)
2.1使用Spring Boot默认的HikariDataSource数据源
2.2使用第三方的Druid数据源
开始CRUD的使用前,说下一个异常
在页面加载的时候会加载spring的图标,因为我们配置了页面跳转的controller,查找图片就跑到templates文件夹去找,导致异常
spring2.1.6前 在application.properties文件夹中添加如下配置
spring2.1.6 后
在页面添加如下标签解决
<
CRUD操作见下方链接
Balmy:[SpringBoot2.X] 22- 整合持久层技术 -JDBC -CRUDzhuanlan.zhihu.com
推演版本 ---配置数据源 ---不推荐 这里是演示创建和优化过程(方便理解)
2.1添加Druid数据源依赖
2.2创建Properties文件
2.3创建配置类
2.31通过自定义配置文件方式配置数据源信息
2.3.2通过@PropertySource注解读取配置文件
----@propertySource 就是为了获取properties中的配置信息
因为我们现在用的是druid连接池,应该在启动的时候就要创建这个对象
通过IDEA特性就可以看到配置生效了,如果没有生效就是灰色的
配置数据源优化 一
通过@ConfigurationProperties注解读取配置信息
@ConfigurationProperties
是springboot的注解只能用于读取springboot的配置文件,不能读取其他的配置文件
____________________________________________________________________________________________
在上面的步骤中我们配置了一个针对jdbc去配置数据源的配置类,通过这样的代码获取到了数据源所以来的配置信息,但从设计角度而言不是很好,
因为如果其他类要用的话,还需要重新写,
为了充分的复用,就要改进这里,所以就用到了@ConfigurationProperties
创建配置信息实体类
@ConfigurationProperties会自动在application.properties文件中读取以jdbc开头的配置文件,以set方法的方式注入信息
同时jdbc后面的名字不能乱取,必须和配置信息实体类保持一致
在application.properties中添加配置信息
修改配置类
使用@EnableConfigurationProperties()
@EnableConfigurationProperties() 注解
在这个注解中,需要一个class的值,可以用其指定配置类是哪个作为配置
然后使用@Autowired 注入对象
用过对象打点属性读取application.properties中的配置
补充知识点,可以用构造方法来注入值----不推荐
配置数据源优化二-终章优化
@ConfigurationProperties 注解的优雅使用方式
@ConfigurationProperties 不仅可以加到类上还可以加在获取数据源的方法上
1.这一步可以删除上面创建的配置信息实体类
2.这个注解就会把从配置文件中解析出来的内容,通过调用
DruidDataSource
创建的druidDataSource 对象set方法,将值直接注入进去,不需要在手动配置