超级全面的 SpringBoot 注解介绍,每一个用途都应该清晰.docx

超级全面的 SpringBoot 注解介绍,每一个用途都应该清晰.docx

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
超级全面的 SpringBoot 注解介绍,每一个用途都应该清晰 一、注解(annotations)列表 1、@SpringBootApplication 包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。 其中@ComponentScan让Spring Boot扫描到Configuration类并把它加入到程序上下文。 2、@ComponentScan 组件扫描,可自动发现和装配一些Bean。 3、@Configuration 等同于Spring的XML配置文件;使用Java代码可以检查类型安全。 4、@EnableAutoConfiguration 自动配置 5、@RestController 该注解是@Controller和@ResponseBody的合集,表示这是个控制器Bean,并且是将函数的返回值直接填入HTTP响应体中,是REST风格的控制器。 6、@Autowired 自动导入。 7、@PathVariable 获取参数。 8、@JsonBackReference 解决嵌套外链问题。 9、@RepositoryRestResourcepublic 配合spring-boot-starter-data-rest使用。 二、注解(annotations)详解 1、@SpringBootApplication:申明让Spring Boot自动给程序进行必要的配置,这个配置等同于:@Configuration?,@EnableAutoConfiguration?和?@ComponentScan?三个配置。 import?org.springframework.boot.SpringApplication; import?org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication?//?same?as?@Configuration?@EnableAutoConfiguration?@ComponentScan public?class?Application?{ ????public?static?void?main(String[]?args)?{ ????????SpringApplication.run(Application.class,?args); ????} } 2、@ResponseBody:表示该方法的返回结果直接写入HTTP Response Body中,一般在异步获取数据时使用,用于构建RESTful的api。 在使用@RequestMapping后,返回值通常解析为跳转路径,加上@ResponseBody后返回结果不会被解析为跳转路径,而是直接写入HTTP Response Body中。 比如异步获取json数据,加上@ResponseBody后,会直接返回json数据。 该注解一般会配合@RequestMapping一起使用。 示例代码: @RequestMapping(“/test”) @ResponseBody public?String?test(){ ????return?”ok”; } 3、@Controller:用于定义控制器类,在spring?项目中由控制器负责将用户发来的URL请求转发到对应的服务接口(service层) 一般这个注解在类中,通常方法需要配合注解@RequestMapping。 搜索公众号后端架构师后台回复“架构整洁”,获取一份惊喜礼包。 示例代码: @Controller @RequestMapping(“/demoInfo”) publicclass?DemoController?{ ????@Autowired ????private?DemoInfoService?demoInfoService; ????@RequestMapping("/hello") ????public?String?hello(Map?map){ ????????System.out.println("DemoController.hello()"); ????????map.put("hello","from?TemplateController.helloHtml"); ????????//?会使用hello.html或者hello.ftl模板进行渲染显示. ????????return"/hello"; ????} } 4、@RestController:用于标注控制层组件(如struts中的action),@ResponseBody和@Controller的合集。 示例代码: import?

文档评论(0)

150****6040 + 关注
实名认证
内容提供者

互联网产品运营推广以及k12教育内容。

1亿VIP精品文档

相关文档