1.yaml语法规则
boolean:TRUE
float: 3.14
int: 123 //默认是int类型,如果0123,会出现进制转换问题
null: ~ //~代表null
String:HelloWord //直接写即可
String2: "Hello Word" //特殊字符可以用引号包裹
date: 2022-9-12
datetime: 2022-9-12T15:00:00+08:00 //时间和日期之间用T连接,最后+代表时区
2.加载测试专用配置
测试类新增一个配置类,然后要测试这个配置类
@import({类.class})注解,然后autoWried注解直接注入即可使用,
3.测试类中启动Web环境
@SpringBootTest(webEnvironment =SpringBootTest.WebEnvironment.DEFINED_PROT)就会以web启动
4.发送虚拟请求
4.1开启虚拟调用MVC
@AutoConfigureMockMvc
4.2注入MockMvc对象
@autowired
MockMvc mvc
4.3开始模拟虚拟请求
MockHttpServletRequestBuilder builder = MockMvcRequestBuilders.get("/books")//get,pot,put,delete都有方法,里面的参数直接写controller层的,不需要添加前面的http://localhost:端口号
ResultActions action = mvc.perform(builder);//这个有异常,抛出即可
4.4设置预期值,成功显示成功,失败显示失败
MockMvcResultMatchers status = MockMvcResultMatchers.status();
ResultMatcher ok = static.isOk();//是否成功
action.andExpect(ok);//添加预期值到本次调用过程中进行匹配
5.内置数据源
springboot默认会内置了三个数据源
HikariCP #号称轻量级最快的数据源
Tomcat提供DataSource
Commons DBCP
一般带入druid包,然后使用druid的数据源
6.Spring内置持久化技术JDBCTemplate
导入包
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency>
yml配置文件里面需要dataSource配置,之前已经配置过了
spring:
datasource:
url: jdbc:mysql://localhost:3306/ssm_db?serverTimezone=UTC
hikari:
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
maximum-pool-size: 50
然后sql语句就要手动去写了
jdbcTemplate.query(),jdbcTemplate.insert(),但是如果和mybatis比,肯定是比较繁琐的,但是这是springBoot自带的。有些项目就是使用这种技术。
7.Springboot内置数据库3种
H2:
HSQL:
Derby:
导包,需要一个持久化技术,mybatis也好,觉得不错Template也行
<dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <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>
配置文件:
spring: h2: console: #控制台开启 enabled: true #访问路劲 path: /h2 #默认密码123456server: port: 80
然后启动服务,浏览器输入localhost:端口号/h2