spring注解

0.@Controller:通常用于Controller类,也就是控制层(MVC)。

@Service:通常用于注解Service类,也就是服务层

@Repository:通常用于注解DAO类,也就是我们常说的持久层。

@GetMapping,处理get请求
@PutMapping,处理put请求
@DeleteMapping,处理delete请求

1.@RestController

在Spring中@RestController的作用等同于@Controller + @ResponseBody。

在一个类上添加@Controller注解,表明了这个类是一个控制器类

@ResponseBody==>java对象转为json格式,

 加上ResponseBody就不能跳转页面了,如果想在这个类中写返回页面的方法,返回类型需要写ModelAndView

还有个@RequestBody ==>必须写在参数里,将前端的json字符串转成java对象

2.@RequestMapping

2.1在使用@RequestMapping后,返回值通常解析为跳转路径,加上@responsebody后返回结果不会被解析为跳转路径,而是直接写入HTTP response body中。而 @ResponseBody就可以理解成将java的对象转换成json字符串的格式给前端解析

 上述代码第一个方法就是跳转param页面,第二个则是将param装在了ModelAndView里返回的

2.2参数==>发送post请求格式
@RequestMapping(value = "/array", method = { RequestMethod.POST })

3.@PostMapping


@PostMapping(value = "/list2", produces = "text/plain;charset=UTF-8")

//produces就相当于contenttype ==>指定返回的内容类型,仅当request请求头中的(Accept)类型中包含该指定类型才返回;

注解RequestMapping中produces属性可以设置返回数据的类型以及编码,可以是json或者xml:

@PostMapping(value = "/list2")等价于 ==>@RequestMapping(value = "list2",method = RequestMethod.POST)

4.RequestParam

RequestParam将前端数据赋值给方法形参,以前得前端参数都是用getParameter()方法,
现在spring底层注解RequestParam就帮我们干了

 5.@Valid注解通常用于对象属性字段的规则检测

 6.@Transactional

1. isolation => Isolation(5种) - 隔离级别
2. timeout => int: 秒为单位,-1表示不超时;5:表示5秒超时
3. readOnly => boolean 用于加速查询效率
4. rollbackFor => Class[] 表示哪些异常需要回滚
5. rollbackForClassName => String[] 填写要回滚的异常的全限定类名称
6. noRollbackFor => Class[] 表示哪些异常不需要回滚
7. noRollbackForClassName => String[] 填写不需要回滚的异常的全限定类名称
8. transactionManager => String 指定事务管理器bean的id
9. propagation => Propagation 事务传播行为

 

200.@Autowired

自动注入依赖的属性 默认按照类型注入,可以用在 属性上或者setter方法上 推荐写在属性上
0.来自Spring-beans包

 

原文地址:https://www.cnblogs.com/liuqingzhong/p/14083741.html