SpringBoot注⼊依赖及注解
作为⼀个超级⼩⽩,使⽤SpringBoot的感受就是SpringBoot的很多东西不明觉厉,虽然不是很熟悉,但是还是感性的体会到了很⽅便,⽐如如果缺少依赖的时候,会提醒你且会⾃动引⼊,且有很多注解可以拿来⽤。以前从来没接触过这么多注解,所以就总结⼀下。
依赖注⼊
在查资料的过程中,发现有些注解和依赖注⼊有关,什么是依赖注⼊?以前使⽤⼀个对象的时候需要new⼀个对象出来,⽽且对象之间存在依赖关系,B类的对象可能是A类的属性,在A类中new出B对象,增加了类之间的耦合性。于是,就有了控制反转(IoC)和依赖注⼊(DI)的概念。控制反转就是将对象的实例化过程交给spring框架来做,依赖注⼊就是将A对象所依赖的B对象以配置⽂件或注解的形式传递给A对象。
在Spring中,你不需要⾃⼰创建对象,你只需要告诉Spring,哪些类我需要创建出对象,然后在启动项⽬的时候Spring就会⾃动帮你创建出该对象。
在SpringBoot中使⽤依赖注⼊的⽅式很简单,只需要添加相应的注解即可。
注解分类
⼀类是使⽤Bean,即Bean拿来⽤,完成属性、⽅法的组装。⽐如@Autowired , @Resource,可以通过byTYPE(@Autowired)、byNAME(@Resource)的⽅式获取Bean。⼀般⽤来修饰字段,构造函数,或者设置⽅法,并做注⼊。
⼀类时注册Bean,@Component , @Repository , @ Controller , @Service , @Configration,⼀般修饰类,这些注解都是把你要实例化的对象转化成⼀个Bean,放在IoC容器中,等你要⽤的时候,它会和上⾯的@Autowired , @Resource配合到⼀起,把对象、属性、⽅法完美组装。
常⽤注解
@Service⽤于标注业务层组件
@Controller⽤于标注控制层组件
@Repository⽤于标注数据库访问Dao组件
@Component泛指组件,当组件不好归类的时候,我们可以使⽤这个注解进⾏标注
@Autowired,⾃动注⼊,⾃动从spring的上下⽂到合适的bean来注⼊
@RestController,Spring4之后新加⼊的注解,原来返回json需要@ResponseBody和@Controller配合,将调⽤的结果直接返回给调⽤者。@Value:注⼊Spring boot application.properties配置的属性的值。
@RequestMapping:提供路由信息,负责URL到Controller中的具体函数的映射。@RequestMapping(“/path”)表⽰该控制器处理所
有“/path”的UR L请求。RequestMapping是⼀个⽤来处理请求地址映射的注解,可⽤于类或⽅法上。
@GetMapping是⼀个组合注解,是@RequestMapping(method = RequestMethod.GET)的缩写。该注解将HTTP Get 映射到 特定的处理⽅法上。
同理PostMapping也是⼀个组合注解,是@RequestMapping(method = RequestMethod.POST)的缩写。
@PathVariable:获取url中的数据。
@ComponentScan 组件扫描,发现和组装⼀些Bean。
@EnableAutoConfiguration⾃动配置。
@SpringBootApplication:申明让spring boot⾃动给程序进⾏必要的配置,这个配置等同于:@Configuration
,@EnableAutoConfiguration 和 @ComponentScan 三个配置。
@Data ⾃动⽣成setter、getter⽅法
@Import:⽤来导⼊其他配置类。
@ImportResource:⽤来加载xml配置⽂件。resource和autowired注解的区别
@Bean:放在⽅法的上⾯,⽽不是类,意思是产⽣⼀个bean,并交给spring管理。
@Inject:等价于默认的@Autowired,只是没有required属性;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。