一、Spring注解
1) 申明类的注解 相当于<bean > 写在类上
② @Service :声明service层类。写在实现类上,不写在接口上;
@Service public class RoleServiceImpl implements RoleService { }
③ @Controller:控制层注解;
@Controller public class RoleController { }
④ @Repository:dao层注解,若在spring配置文件中配置了dao层接口,可省略此注解;
@Repository public interface RoleMapper { }
⑤ @Component// 其他组件注解,用于非Controller Service dao层的组件;
@Component public class LogAspect { }
⑥ @Autowired:依赖注入注解,根据类型进行注入。 如果有多个实现类,可以配合 @Qualifier("helloServiceImpl") 来进行指定;
//required:指定对象是否必须,为false,则可以为null(即使查找的对象不存在,也不会报错,只会报空指针异常),默认为true(如果找不到对象,就会报错,报找不到对象的错误) @Autowired(required = true) private HelloService helloService;
⑦ @Resource :依赖注入注解,先根据名称进入注入,如果没有再根据类型进行注入;
//Resource(name):指定注入对象的名称(id),当一个接口有多个实现类的情况下 //如果没有通过name指定注入的对象名,则会先根据属性名称进行注入,如果不存在对应的对象,则根据类型进行注入 @Resource(name = "eByeService") private BbyeService byeService;
⑧ @Lazy:懒加载,指定延迟进行创建或注入;
⑨ @Transactional :事务注解,用来指定方法事务的隔离级别和传播特性;
二、 Springmvc注解
① RequestMapping: 加在类上,或方法上,用来指定请求地址;
加在类上,指定该类中所有方法的统一访问前缀;
② GetMapping,PostMapping,DeleteMapping,PutMapping 分别对应get/post/delete/put 等http请求方式 ,如果请求方式不对,返回405状态码;
③ ResponseBody :指定返回json数据,不进行页面跳转。通常用来响应ajax请求;
④ @JsonFormat 添加在实体类的日期属性上,将对象转换成json格式时,会根据指定格式将日期类型的数据转换成字符串。将字符串转换成对象时,会根据指定的格式将字符串转换成日期类型的数据;
⑤ @DateTimeFormat(pattern = "yyyy-MM-dd")将前台传递的字符串数据进行格式化成日期类型的数据;
⑥ @SessionAttribute向session域中获取值;
⑦ @ModelAttribute 可添加在方法和方法参数上,向request域中存取值;
⑧ @RequestParam: 用来向request请求参数中获取值。如果指定name,则获取指定name的值,如果没指定,则获取所有请求数据,封装进map;
⑨ @RequestBody: 用来获取ContentType为Application/json提交的数据,并将json字符串转换成对象。 日期的转换会依赖于@JsonForma;
⑩ @RestController: 标识该类中的所有方法都返回json数据,方法上不需要再加ResponseBody;
11 @PathVariable:获取URL地址中的数据,常用来实现Restful风格的API设计。
原文:https://www.cnblogs.com/xie-qi/p/13222331.html