springboot 一些常用的注解介绍

springboot 一些常用的注解介绍

Author QiuRiMangCao 秋日芒草


@SpringBootApplication(scanBasePackages = {“com.qiu”}, exclude = {})

包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。其中@ComponentScan让spring Boot扫描到Configuration类并把它加入到程序上下文。scanBasePackages:设置ComponentScan扫描包路径

@ComponentScan

组件扫描,可自动发现和装配一些Bean。@ComponentScan告诉Spring 哪个packages 的用注解标识的类 会被spring自动扫描并且装入bean容器。
例如,如果你有个类用@Controller注解标识了,那么,如果不加上@ComponentScan,自动扫描该controller,那么该Controller就不会被spring扫描到,更不会装入spring容器中,因此你配置的这个Controller也没有意义。

@EnableAutoConfiguration

自动配置。@EnableAutoConfiguration和@Configuration是成对出现,@EnableAutoConfiguration负责去扫描带有@Configuration的类。
由于springboot相当于一个CI,可以持续集成,所有@EnableAutoConfiguration相当于对集成进来的模块进行初始化的工作。
会去扫描pom文件中所依赖的jar包,依赖了哪个jar包就对这个jar进行初始化。

@Configuration

等同于spring的XML配置文件;使用Java代码可以检查类型安全。可理解为用spring的时候xml里面的标签。

@Bean

可理解为用spring的时候xml里面的标签

@RestController

注解是@Controller和@ResponseBody的合集,表示这是个控制器bean,并且是将函数的返回值直接填入HTTP响应体中,是REST风格的控制器。

@Value(“${application.username:QiuRiMangCao}”

使用@value注解,从application.properties配置文件读取值,没读取到就用默认值QiuRiMangCao

@MapperScan(“cn.qiu.mapper”)

mybatis框架中的dao扫描

@ServletComponentScan(basePackages = { “cn.qiu” })

扫描工程中的Servlet、Filter、Listener(带注解的)

@RunWith(SpringJUnit4ClassRunner.class)

SpringJUnit支持,由此引入Spring-Test框架支持!

@SpringApplicationConfiguration(classes = App.class)

指定我们SpringBoot工程的Application启动类(App是项目的启动类)

@WebAppConfiguration

由于是Web项目,Junit需要模拟ServletContext,因此我们需要给我们的测试类加上@WebAppConfiguration。

你可能感兴趣的:(后台框架)