详解springboot测试类注解

这篇文章主要介绍了springboot测试类注解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

创建一个TextHello类

 

TextHello类的代码如下

 @Controller
@RequestMapping("/hello")
public class TextHello {
@GetMapping("/hello")
@ResponseBody
public String hello(){
return "hello,程程呀";
}
}

我是在pom.xml文件中增加依赖如下  

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>

在浏览器结果如下:

 

自动配置: pom.xml spring-boot-dependencies:核心依赖在父类工程中! 我们在写或者引入springboot依赖的时候不需要指定版本号,是因为有这些版本仓库 启动器

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>

启动器:就是springboot的启动场景 比如说spring-boot-starter-web,他就会帮助我们自动导入web环境下的所有依赖。 而springboot会将所有的场景都变成一个个的启动器

注解

@SpringBootApplication :包含@configuration,@ComponentScan,@EnableAutoConfiguration通常在主类上
@SpringBootConfiguration :springboot的配置
@Configuration :spring配置类
@Component :说明这也是一个spring的组件
@EnableAutoConfiguration :自动配置
@AutoConfigurationPackage :自动配置包
@ResponseBody:返回信息为json形式的数据。一般来说会直接使用@RestRestController标注。
@CrossOrigin:解决跨域问题。如果没做特殊处理,一般的@CrossOrigin都会加在控制层的类上。除非引入了gateway网关,就无需通过注解解决跨域。
@MapperScan:以往在使用@Mapper一个个定义mapper,有了@MapperScan之后,只需指定mapper包,就不需要一个个使用@Mapper注解了。
@EnableScheduling:开启定时任务,在类上使用。
@Value:将外部配置文件的值动态注入。。
@Transactional:声明式事务注解。
@Data:lombok下的注解,使用后就无需再写实体类的getter和setter方法。
@RestController:用于标注控制层组件,包含@Controller和@ResponseBody。

springboot所有的自动配置都是在启动的时候扫描并加载:spring.factories 所有的自动配置类都在这里面,但是不一定会生效,要对其进行判断对应start,就有了对应的启动器,有了启动器,自动装配才会生效,然后配置成功。

主启动类

@SpringBootApplication :标注这个类是一个springboot的应用:启动类下的所有资源被导入 springboot理解:自动装配,run() 全面接管springMVC配置!

Static:存放静态资源,比如:css,js,图片 Templates:模板文件 application.porperties:springboot的配置文件

配置文件格式

properties文件 :key-value的格式

yml文件 : 阶梯状的属性文件

区别

  • .yml 格式不支持 @PropertySource 注解导入配置。
  • properties文件和yml文件中有相同属性的时候,properties文件的优先级高于yml文件
  • 看上面的图:两个配置文件的格式不一样,他们配置形同的时候properties的优先级高于yml文件,但是建议使用yml文件,这个文件的结构更清晰。

本文标题为:详解springboot测试类注解

基础教程推荐