请求
@RequestBody
请求体。将json请求数据转为对象数据接收
@RequestMapping
请求映射路径。设置类或方法在web中的请求路径
@RequestParam
1、将返回的集合的josn数据进行自动封装并赋值给集合变量 2、请求参数和形参名不同时,可以使用RequestParam("别名")的方式来获取到数据 3、设置参数的默认值@RequestParam(defaultValue = "")
@PathVariable
将路径变量赋值给变量
响应
@RestController
RestController里除了元注解还包含了ResponseBody和Controller,他是一个组合注解。分别实现了存类对象到ioc容器和将数据转为json数据
@ResponseBody
响应体,将对象数据转为json数据后响应
IOC 控制反转
简单来说IOC就是实现了将类对象创建并存入spring容器中,供后续调用
@Component
三层架构以外,需要将类对象存入Spring容器中,供后续使用
@Repository
使用在Dao数据持久层注解,功能:创建类对象存入Spring容器中,供后续使用
@Service
使用在Service业务逻辑处理层,功能:创建类对象存入Spring容器中,供后续使用
@Controller
使用在Controller控制层,功能:创建类对象存入Spring容器中,供后续使用
DI依赖注入
将spring容器中存储的对象取出,供使用
@Autowired
按数据类型从Spring容器中取出对象使用
@Primary
使用在实现类上,当有两个或两个以上实现类时,指定该实现类为默认实现类
@Qualifier
配合@Autowired注解使用,指定使用哪个名字的实现类对象
@Resource
@Resource和@Autowired区别是: Resource是jdk提供的。Autowired是spring提供的。 Resource是按照bean名字来取spring容器中的对象,Autowired是按照数据类型来取Spring容器中的对象。
IOC/DI的一存一取就把创建对象的权利从开发者手中,回收到了spring容器中,从而实现了高聚合低耦合的设计思想。