一、简单理解Spring ioc 和 aop
- 控制反转(IOC):主要是将对象交由spring 进行管理 ,其中有俩种方式实现 通过xml 进行配置bean 和通过注解 @component实现 当spring启动后,spring ioc 容器根据对象定义的进行创建对象 并管理起来 ,如果想获取对象通ApplicationContent的getbean()获取,ioc 利用的反射机制,根据配置的bean生成相对应的对象,并且根据依赖关系将这个对象注入到依赖对象中。
- 切面编程(AOP):aop主要时动态代理机制,实现了业务代码和非业务代码进行分离,实现了降低模块之间的耦合度和提高代码的复用性,其中一般使用在日志、权限和事务等。
二、Spring Boot 的特点
- 上手容易,开箱即用
- 自动装配
三、Spring Boot 常用注解
- @SpringBootApplication :启动spring boot 的应用项目的
- @EnableAutoConfiguration :让spring boot 根据类路径中的jar包依赖当前项目进行自动装配
- @Value :在 application.properties定义属性,之间使用注入即可
- @EnableConfigurationProperties:用 @EnableConfigurationProperties注解@ConfigurationProperties生效,并从ioc容器中获取bean。
- @RestController:相当于@Controller和@ResponseBody结合,控制返回的数据是json的数据。
- @RequestMapping:映射web的路径
- @RequestParam:获取request请求的参数值
- @ResponseBody:支持将返回值放在response体内,而不是返回一个页面。
- @Bean:定义在方法上,在容器内初始化一个bean实例类。
- @Service:标注业务层组件
- @Controller:标记控制层
- @Repository:用于标注数据访问组件,即DAO组件
- @Component:泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。
- @PathVariable: 用来获得请求url中的动态参数
- @ComponentScan: 注解告知spring 扫描指定的包来初始化 spring 。
- @EnableZuulProxy:Spring Cloud提供了注解@EnableZuulProxy来启用路由代理。
- @Autowired: 进行自动注入
- @Configuration:标注配置信息类
- @Import() :导入配置类的实例化的bean