1. JDBC
导入依赖,并创建application.yml
效果:
默认是用org.apache.tomcat.jdbc.pool.DataSource作为数据源;
数据源的相关配置都在DataSourceProperties里面;
自动配置原理:
org.springframework.boot.autoconfigure.jdbc:
(1)、参考DataSourceConfiguration,根据配置创建数据源,默认使用Tomcat连接池;可以使用 spring.datasource.type指定自定义的数据源类型;
(2)、SpringBoot默认可以支持;
(3)、 自定义数据源类型
(4)、DataSourceInitializer:ApplicationListener
作用:
- runSchemaScripts();运行建表语句;
- runDataScripts();运行插入数据的sql语句;
默认只需要将文件命名为:
(5)、操作数据库:自动配置了JdbcTemplate操作数据库
(6)、编写Controller显示数据库数据在网页中
2.整合Druid数据源
-
导入依赖
<!-- https://mvnrepository.com/artifact/com.alibaba/druid --> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.19</version> </dependency>
-
配置config
@Configuration
public class DruidConfig {@ConfigurationProperties(prefix = "spring.datasource") @Bean public DataSource druid(){ return new DruidDataSource(); } // 配置druid监控 //配置一个管理后台的servlet @Bean public ServletRegistrationBean StatViewServlet(){ ServletRegistrationBean bean = new ServletRegistrationBean(new StatViewServlet(), "/druid/*"); Map<String,String> initParams = new HashMap<>(); initParams.put("loginUsername","admin"); initParams.put("loginPassword","123456"); // initParams.put("allow",""); //允许访问 // initParams.put("deny",""); //拦截 return bean; } //配置一个web监控的filter @Bean public FilterRegistrationBean webStatFilter(){ FilterRegistrationBean bean = new FilterRegistrationBean(); bean.setFilter(new WebStatFilter()); Map<String,String> initParams = new HashMap<>(); initParams.put("exclusions","*.js,*.css,/druid/*"); bean.setInitParameters(initParams); bean.setUrlPatterns(Arrays.asList("/*")); return bean; } }
3. 整合MyBatis
- 配置数据源相关属性(参考第二节Druid)
- 在数据库创建表(参考第一节)
- 创建JavaBean
- 使用注解进行整合
(1)可以使用@MapperScan对整个包进行扫描
(2)创建一个DepartmentMapper
(3)可以在容器中添加ConfigurationCustomizer来使用驼峰命名法
(4)编写controller
- 使用配置文件进行整合
(1)在resources中创建配置文件mybatis-config.xml和EmployeeMapper.xml
(2)在application.yml配置
(3)在controller中添加相应方法
4.整合SprongData JPA
- SpringDate简介
- 整合SpringDataJPA
JPA:ORM(Object Relational Mapping)
(1)编写一个实体类与数据表进行映射,并且配置好映射关系
(2)编写一个Dao接口来操作实体类对应的数据表(Repository)
(3)基本的配置JpaProperties
(4)编写controller