当前位置:   article > 正文

@RequestMapping、@GetMapping、@PostMapping_use precise mapping annotation, i.e. '@getmapping'

use precise mapping annotation, i.e. '@getmapping', '@postmapping', etc.

@RequestMapping

你可以使用@RequestMapping注解来将请求URL,如/appointments等,映射到整个类上或某个特定的处理器方法上。一般来说,类级别的注解负责将一个特定(或符合某种模式)的请求路径映射到一个控制器上,同时通过方法级别的注解来细化映射,即根据特定的HTTP请求方法(“GET”“POST”方法等)、HTTP请求中是否携带特定参数等条件,将请求映射到匹配的方法上。

可以在方法和类上使用 @Target({ElementType.TYPE, ElementType.METHOD})

* value() 和 path()等返回值为字符串数组 都可以同时定义多个字符串值来接收多个URL请求

  1. @Target({ElementType.TYPE, ElementType.METHOD})
  2. @Retention(RetentionPolicy.RUNTIME)
  3. @Documented
  4. @Mapping
  5. public @interface RequestMapping {
  6. String name() default "";
  7. @AliasFor("path")
  8. String[] value() default {};
  9. @AliasFor("value")
  10. String[] path() default {};
  11. RequestMethod[] method() default {};
  12. String[] params() default {};
  13. String[] headers() default {};
  14. String[] consumes() default {};
  15. String[] produces() default {};
  16. }

@PostMapping

  1. @Target({ElementType.METHOD})
  2. @Retention(RetentionPolicy.RUNTIME)
  3. @Documented
  4. @RequestMapping(
  5. method = {RequestMethod.POST}
  6. )
  7. public @interface PostMapping {
  8. @AliasFor(
  9. annotation = RequestMapping.class
  10. )
  11. String name() default "";
  12. @AliasFor(
  13. annotation = RequestMapping.class
  14. )
  15. String[] value() default {};
  16. @AliasFor(
  17. annotation = RequestMapping.class
  18. )
  19. String[] path() default {};
  20. @AliasFor(
  21. annotation = RequestMapping.class
  22. )
  23. String[] params() default {};
  24. @AliasFor(
  25. annotation = RequestMapping.class
  26. )
  27. String[] headers() default {};
  28. @AliasFor(
  29. annotation = RequestMapping.class
  30. )
  31. String[] consumes() default {};
  32. @AliasFor(
  33. annotation = RequestMapping.class
  34. )
  35. String[] produces() default {};
  36. }

等于是@RequestMapping(value = "/", method = RequestMethod.POST)的缩写

@GetMapping

  1. @Target({ElementType.METHOD})
  2. @Retention(RetentionPolicy.RUNTIME)
  3. @Documented
  4. @RequestMapping(
  5. method = {RequestMethod.GET}
  6. )
  7. public @interface GetMapping {
  8. @AliasFor(
  9. annotation = RequestMapping.class
  10. )
  11. String name() default "";
  12. @AliasFor(
  13. annotation = RequestMapping.class
  14. )
  15. String[] value() default {};
  16. @AliasFor(
  17. annotation = RequestMapping.class
  18. )
  19. String[] path() default {};
  20. @AliasFor(
  21. annotation = RequestMapping.class
  22. )
  23. String[] params() default {};
  24. @AliasFor(
  25. annotation = RequestMapping.class
  26. )
  27. String[] headers() default {};
  28. @AliasFor(
  29. annotation = RequestMapping.class
  30. )
  31. String[] consumes() default {};
  32. @AliasFor(
  33. annotation = RequestMapping.class
  34. )
  35. String[] produces() default {};
  36. }

等于是@RequestMapping(value = "/", method = RequestMethod.GET)的缩写

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/256022
推荐阅读
相关标签
  

闽ICP备14008679号