java 注解
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java 注解,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2593字,纯文字阅读大概需要4分钟。
内容图文
1.@Controller 注解,在对应的方法上,视图解析器可以解析return 的jsp,html页面,
并且跳转到相应页面 若返回json等内容到页面,则需要加@ResponseBody注解
2.@RestController 注解,相当于@Controller+@ResponseBody两个注解的结合,返回json数据不需要在方法前面加@ResponseBody注解了,
但使用@RestController这个注解,就不能返回jsp,html页面,视图解析器无法解析jsp,html页面
3.@Service 对应的是业务层Bean,Service("userService")注解是告诉Spring,当Spring要创建UserServiceImpl的实例时,bean的名字必须叫做"userService",
这样当Controller需要使用UserServiceImpl的实例时,就可以由Spring创建好的"userService",
然后注入给Controller:在Controller只需要声明一个名字叫“userService”的变量来接收由Spring注入的"userService"即可
4.@RequestMapping 是用来处理请求地址映射的注解,可用于类或方法上。用在类上,表示类中所有的响应的方法都是以该地址作为父路径来访问,
用在方法上表示该方法的访问的路径;两者结合起来的访问的路径为完整的访问某个方法的路径。
5.@Autowired 和@Resource
@Resource和@Autowired都是做bean的注入时使用,都可以写在字段上,或者是setter方法上
区别是@Autowired注解是按照类型(byType)装配依赖对象,默认情况下它要求依赖对象必须存在
@Resource默认按照名称(byName)自动注入
6.@RequestParam
@RequestParam类似于request.getParamter("name")有三个参数。
defaultValue:表示设置默认值
required:通过boolean设置是否是必须要传入的参数
Value:值表示接受的传入的参数类型
7.@ResponseBody
@ResponseBody该注解将controller的方法返回对象,通过适当的HttpMessageConverter转换为指定格式后写入到Response对象的body数据区。
通常用来返回json数据或者是xml数据,需要注意的是在使用此注解之后不会在走视图处理器,而是直接将数据写入到输入流中,他的效果等同于通过response对象输出指定格式的 数据。
返回的数据不是html标签的页面,而是其他某种数据的格式时(json、xml)等使用
8.@RequestBody
@RequestBody 该注解用于读取Request请求的body部分数据,使用系统默认配置的HttpMessageConverter进行解析,然后把相应的数据绑定到要返回的对象上。然后再把 HttpMessageConverter返回的对象数据绑定到controller中的方法参数上。
一直以为@RequestBody接收的是一个Json对象,后来发现,其实 @RequestBody接收的是一个Json对象的字符串,而不是一个Json对象。然而在ajax请求往往传的都是Json对象,用 JSON.stringify(data)的方式就能将对象变成字符串。
同时ajax请求的时候也要指定dataType: "json",contentType:"application/json" 这样就可以轻易的将一个对象或者List传到Java端,使用@RequestBody即可绑定对象或者List.
9.@GetMapping 是一个组合注解,是@RequestMapping(method = RequestMethod.GET)的缩写。该注解将HTTP Get 映射到 特定的处理方法上。
10.@PostMapping 是一个组合注解 是@RequestMapping(method = RequestMethod.POST)的缩写 。该注解将HTTP Post 映射到 特定的处理方法上。
内容总结
以上是互联网集市为您收集整理的java 注解全部内容,希望文章能够帮你解决java 注解所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。