springboot 项目启动类的所有注解

 自从刚开始学习的时候写过Java,距今已经快5年之久,从事开发5年来,写过Android,JavaScript,PHP,Python,混合式开发等等,到现在最终还是回到了Java。

最近做一个OA项目,需要用SpringBoot,然而一上手就令我头大的问题就是他的注解了。。。各种注解,各种意思,各种眼花缭乱,各种懵逼。然后没办法只能自己一一的研究了,今天把项目启动类的注解研究学习了一下,把自己的心得体会记录再次,以供各位码农学习交流,批评改正。

启动类常用的注解如下:

@SpringBootApplication(scanBasePackages = {"com.*.common", "com.*.account"} )
@EnableJpaAuditing
@EnableFeignClients(basePackages = {"com.*.sms"})
@EnableTransactionManagement

详细解释

@SpringBootApplication 

之前用户使用的是3个注解注解他们的main类。分别是@Configuration、@EnableAutoConfiguration、@ComponentScan。由于这些注解一般都是一起使用,spring boot提供了一个统一的注解@SpringBootApplication。

1、@Configuration:提到@Configuration就要提到他的搭档@Bean。使用这两个注解就可以创建一个简单的spring配置类,可以用来替代相应的xml配置文件。

注:@Configuration的注解类标识这个类可以使用Spring IoC容器作为bean定义的来源。@Bean注解告诉Spring,一个带有@Bean的注解方法将返回一个对象,该对象应该被注册为在Spring应用程序上下文中的bean。

2、@EnableAutoConfiguration:能够自动配置spring的上下文,试图猜测和配置你想要的bean类,通常会自动根据你的类路径和你的bean定义自动配置。

3、@ComponentScan:会自动扫描指定包下的全部标有@Component的类,并注册成bean,当然包括@Component下的子注解@Service,@Repository,@Controller。

@EnableJpaAuditing

在启动类里面加入@EnableJpaAuditing表示启用jpa审计

 

@EnableFeignClients

通过当前service服务要调用到其他service服务的api接口时,可通过EnableFeignClients调用其他服务的api。加上这个注解,表示这个服务支持调用远程服务,关于使用@FeignClient的详细,可以参考这个帖子:

https://www.cnblogs.com/UniqueColor/p/7130782.html

@EnableTransactionManagement

开启事务支持后,然后在访问数据库的Service方法上添加注解 @Transactional 便可。此注解可以省略。详情可参考一下帖子:

https://blog.csdn.net/u010963948/article/details/79208328

猜你喜欢

转载自blog.csdn.net/wang_1220/article/details/107767035