每次都要写这一段,为了开发更加快速便捷可以自定义个注解:
如下:
package com.gx.annotation;
import org.springframework.core.annotation.AliasFor;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import java.lang.annotation.*;
@Target({ElementType.METHOD})//只允许在方法上用
@Retention(RetentionPolicy.RUNTIME) //来自于@RequestMapping
@Documented //来自于@RequestMapping
@RequestMapping(produces = "application/json;charset=utf-8")//仿照GetMapping
@ResponseBody//从@RestController中来的灵感
public @interface JsonRequestMapping {
@AliasFor(//仿照GetMapping
annotation = RequestMapping.class
)
String name() default "";
@AliasFor(//仿照GetMapping
annotation = RequestMapping.class
)
String[] value() default {}; //name 来自于 RequestMapping
@AliasFor(//仿照GetMapping
annotation = RequestMapping.class
)
String[] path() default {};
@AliasFor(//仿照GetMapping
annotation = RequestMapping.class
)
String[] params() default {};
@AliasFor(//仿照GetMapping
annotation = RequestMapping.class
)
String[] headers() default {};
@AliasFor(//仿照GetMapping
annotation = RequestMapping.class
)
String[] consumes() default {};
@AliasFor(//仿照GetMapping
annotation = RequestMapping.class
)
RequestMethod[] method() default {}; //来自于@RequestMapping
}