spring常用注解笔记

时间:2022-08-07 23:16:39

spring常用注解解释:
1. Mybatis的映射文件xxxMapper.xml中resultMap标签的作用
resultMap标签是为了映射select查询出来结果的集合,其主要 作用是将实体类中的字段与数据库表中的字段进行关联映射。
注意:当实体类中的字段与数据库表中的字段相同时,可以将re sultMap标签中的关联关系忽略不写。当实体类中的字段与数据 库表中的字段不相同时,就需要在resultMap标签中将实体类字 段与数据库字段一 一进行关联映射。
2. Spring中Data注解的作用
该注解是用来标记入参类,比如需要提交一个表单数据,由于表 单数据过多,如果在后台一个一个获取有些麻烦,这种情景下就 可以声明一个入参类用该注解标记,注意入参类的属性名一定要 与提交的表单的的name的属性一样,或者要与提交的json格式的n ame的名字一样,否则无法映射,另外,入参类不需要写get和set 方法,只需要加上属性即可。属性类型与表对应的实体类的类型 一致即可。
3. Spring中RequestBody、RequestParam、注解的作用
RequestBody:此注解标记在方法参数前面,如果是在微服务的 请求方的方法参数中,那么即是表示将请求的参数放在 请求的body中发送过去;如果是在微服务中的提供服务 方(如项目的customer微服务),那么即是标记为从请求 的body中取数据,注意:提供服务方默认是从url中取 数据,如果请求方加了此注解,提供服务方没有加那么 就会报异常说是参数找不到。
RequestParam:此注解也是标记在方法参数前面,如果是在微服 务的请求方的方法参数中,那么即是表示将请求的参 数放在请求的url中发送过去;如果是在微服务中的提 供服务方(如项目的customer微服务),那么即是标记为 从请求url中取数据,注意:提供服务方默认是从ur l中取数据,所以如果请求方加了此注解,则提供服务 方就不用加注解即可。
4. @param注解的作用
该注解是Mybatis的注解,应用场景:当传入xxxMapper.xml文件 中的sql语句的参数是两个以上的参数(一个的时候也能用,不过 没必要),那么就需要用到此注解来标记参数;@param("xxx"), 括号中的名字要与xxxMapper.xml文件中的sql语句用到该参数的 地方一致。另外:spring中也有此注解,但是与mybatis中的用 法有所区别,如果使用spring的该注解,那么xxxMapper.xml文 件的sql引用参数的时候就要按照参数的顺序下标来取而不是注 解括号中的名字,如 select * from user where id=#{0,jdbcType=INTEGER},其中#{0,jdbcType=INTEGER}中的0 指的就是用了spring的此注解的第一个参数。