SpringBoot特殊注解理解

    技术2022-07-12  72

    SpringBoot注解:

    Spring的java配置方式主要通过以下两个注解实现: @Configuration:作用在类上,相当于一个xml配置文件 @Bean:作用在方法中,相当于xml中的

    @SpringBootApplication: {是一个复合注解,包括@ComponentScan,和@SpringBootConfiguration,@EnableAutoConfiguration。 @SpringBootApplication继承自@Comnfiguration,二者功能也一致,标注当前类是配置类,并会将当前类内声明的一个或多个以 @Bean注解标记的方法的实例纳入到srping容器中,并且实例名就是方法名。

    @SpringBootApplication指定扫描某些包 @SpringBootApplication注解默认扫描的是当前类所在的包和子包。自己可以通过属性来设置扫描其他的包,设置了之后默认值就不在有用。 @SpringBootApplication(scanBasePackageClasses = {TestConfig.class,TestController.class}) 通过设置scanBasePackageClasses属性来制定,只扫描哪些配置类(@Configuration注解的类)。 或者如下设置: @SpringBootApplication(scanBasePackageClasses = {Springboot01Application.class,TestConfig.class}) 指定扫描这些类所在的包和子包。 设置不自动装配:springboot 的自动配置可以帮我们节省很多时间,但是有时候如果我们不想在引入依赖包的情况自动配置,则可以通过相关设置取消 在@SpringBootApplication(exclude = {JpaRepositoriesAutoConfiguration.class, RedisAutoConfiguration.class})注解内部将不需要自动配置 的依赖通过exclude参数指定即可,可以指定多个类 所有自动配置的类全都在:org.springframework.boot.autoconfigure包下。只能排出自动配置的类

    @EnableAutoConfiguration的作用启动自动的配置,@EnableAutoConfiguration注解的意思就是Springboot根据你添加的jar包 来配置你项目的默认配置,比如根据spring-boot-starter-web ,来判断你的项目是否需要添加了webmvc和tomcat,就会自动的帮你配置web项目中所需要的默认配置。

    @ComponentScan,扫描当前包及其子包下被@Component,@Controller,@Service,@Repository注解标记的类并纳入到spring容器中进行管理。 是以前的context:component-scan(以前使用在xml中使用的标签,用来扫描包)。 @ComponentScan注解在Spring的注解中也起到到相当重要的作用,它可以自定义Spring扫描的包,也就是它默认会扫描标注了@Controller、@Service、 @Component以及@Repository注解的类,并实例化这些组件到SpringIOC容器中,它有个配置属性:basePackages,也就是指定扫描的包,如果不知道, 它会默认扫描配置了该注解的类的包所在的路径(包括子包)。 }

    @Configuration:代表这个类是一个配置类。 @ComponentScan:用来扫描指定包下面的注解类。 @Import:用来导入其他的@Configuration配置类。 @ImportResource:用来导入xml配置文件,比如某些配置一定要xml配置。 @Bean:用来定义一个bean,可以指定初始、销毁方法,及bean范围等。

    @Controller @Controller:处理http请求 @RestController:Spring4之后新的注解,原来返回json需要@ResponseBody配合@Controller @RequestMapping:配置url映射

    处理请求中的参数 @PathVariable:获取url中的数据 @RequestParam:获取请求参数的值 @GetMapping:组合注解

    Processed: 0.010, SQL: 10