[zzerX@blog ~ ]:

Springboot常用注解

spring中有着非常丰富的注解,大大加速了开发效率而且能让我们的程序从可用变为好用。

@SpringBootApplication

  用于标注主程序类,说明这是一个Spring Boot应用的主配置类,SpringBoot 就应该运行这个类的main方法来启动SpringBoot应用;
  • 用法:

    @SpringBootApplication 
    public class App {
         public static void main(String[] args){ 
             //Spring应用启动
           SpringApplication.run(App.class,args); 
         }
     }
  • 包含的注解:

    @Target(ElementType.TYPE)
    @Retention(RetentionPolicy.RUNTIME)
    @Documented
    @Inherited
    @SpringBootConfiguration
    @EnableAutoConfiguration
    @ComponentScan(excludeFilters = {
          @Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class),
          @Filter(type = FilterType.CUSTOM, classes = AutoConfigurationExcludeFilter.class) })
    public @interface SpringBootApplication {

    @RestController

    此注解就是@Controller和@ResponseBoby的集合,被注解的类的所有方法都是以json的格式进行输出。

  • 包含的注解:

    @Target({ElementType.TYPE})
    @Retention(RetentionPolicy.RUNTIME)
    @Documented
    @Controller
    @ResponseBody
    public @interface RestController {

    @RequestMapping

  • 用法

    @RestController
    public class TestService {
        @RequestMapping("/getid")
        public String getid(){
            return "id";
        }
    }
  • 包含的注解:

    @Target({ElementType.TYPE, ElementType.METHOD})
    @Retention(RetentionPolicy.RUNTIME)
    @Documented
    @Mapping
    public @interface RequestMapping {

    @Value

    把配置文件里的值赋值给变量。
    不同环境的application-?.yml 由application.yml配置spring.porfiles.active: ?

  • 用法

    @Value("${user.age}")
    private String age;

    @ConfigurationPorperties

    告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定;
    --需要先添加配置依赖spring-boot-configuration-processor
    
  • 用法

    @ConfigurationProperties(prefix = "环境名")
    public class SecurityProperties {

    其他

    @SpriingBootConfiguration

    标注在某个类上,表示这是一个Spring Boot的配置类;
    -- @SpriingBootConfiguration和@EnableAutoConfiguration一起由SpringBootApplication整合.
    

@EnableAutoCfiguration

  开启自动配置功能; 以前我们需要配置的东西,Spring Boot帮我们自动配置;@EnableAutoConfiguration告诉SpringBoot开启自 动配置功能;这样自动配置才能生效;
  • 包含的注解:
    @AutoConfigurationPackage
    @Import(EnableAutoConfigurationImportSelector.class)
    public @interface EnableAutoConfiguration {

    @ComponentScan

    组件扫描,自动扫面包。并把这些类注册为Bean
    

@Configuration

  定义配置类,可以替换xml文件,如果被注解的类内部包含有一个或者多个被@Bean注解的方法。

@Autowired

  使用该注解作用就是进行自动注入。
  

, — 2021 / 03/03