技术选型
数据源配置
-
Spring boot提供了3种内嵌的数据源对象供开发者选择
-
HiKaiCP:默认内置数据源对象
-
Tomcat提供DataSourse:HikariCP不可用的情况下,且在web环境中,将使用tomcat服务器配置的数据源对象
-
Commons DBCP:Hikari不可用,tomcat数据源也不可用,将使用dbcp数据源
-
通用配置无法设置具体的数据源配置信息,仅提供基本的连接相关配置,如需配置,在下一级配置中设置具体设定
设置HiKaiCp
spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/ssm db username: root password: root hikari: maximum-pool-size: 50
-
-
内置持久化解决方案一JdbcTemplate
-
使用JdbcTemplate需要导入spring-boot-starter-jdbc
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency>
-
dbcTemplate配置
spring: jdbc: template: query-timeout: -1 #查询超时时间 max-rows: 500 #最大行数 fetch-size: -1 #批处理数量
@SpringBootTest class Springboot15SqlApplicationTests { @Autowired private JdbcTemplate jdbcTemplate; @Test void testJdbc(){ String sql = "select * from tbl book where id = 1"; List<Book> query = jdbcTemplate.query(sql, new RowMapper<Book>() { @Override public Book mapRow(ResultSet rs, int rowNum) throws SOLException { Book temp = new Book(); temp.setId(rs.getInt("id")); temp.setName(rs.getString("name")); temp.setType(rs .getString("type")); temp.setDescription(rs.getString("description")); return temp; } }); System.out.println(query); } }
内嵌数据库
-
SpringBoot提供了3种内嵌数据库供开发者选择,提高开发测试效率
- H2
- HSQL
- Derby
-
内嵌数据库(H2)启动方式
-
导入H2相关坐标
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>runtime</scope> </dependency>
-
设置当前项目为web工程,并配置H2管理控制台参数(设置访问数据源)
server : port: 80 spring: h2: console: path: /h2 enabled: true #首次启动由于没有初始化H2,所以需要配置一下初始化过程,后续可注释 datasource: url: jdbc:h2:~/test、 driver-class-name: org.h2.Driver username: sa password: 123456
-
访问用户名sa,默认密码123456
-
H2数据库控制台仅用于开发阶段,线上项目请务必关闭控制台功能
server : port: 80 spring: h2: console: path: /h2 enabled: false
-