eladmin使用的相关注解
1. @Inherited
类继承关系中@Inherited的作用
类继承关系中,子类会继承父类使用的注解中被@Inherited修饰的注解
接口继承关系中@Inherited的作用
接口继承关系中,子接口不会继承父接口中的任何注解,不管父接口中使用的注解有没有被@Inherited修饰
类实现接口关系中@Inherited的作用
类实现接口时不会继承任何接口中定义的注解
2. @Documnet
在自定义注解的时候可以使用@Documented来进行标注,如果使用@Documented标注了,在生成javadoc的时候就会把@Documented注解给显示出来。
两者最注重用的区别就是带@Documented生成的javadoc有@Api 反之没有
3. @Target–用来表示注解的作用范围
@Target(ElementType.TYPE)——接口、类、枚举、注解
@Target(ElementType.FIELD)——字段、枚举的常量
@Target(ElementType.METHOD)——方法
@Target(ElementType.PARAMETER)——方法参数
@Target(ElementType.CONSTRUCTOR) ——构造函数
@Target(ElementType.LOCAL_VARIABLE)——局部变量
@Target(ElementType.ANNOTATION_TYPE)——注解
@Target(ElementType.PACKAGE)——包
4. @Retention
@Retention定义了该Annotation被保留的时间长短
@Retenrion通过RetebtionPolicy表示需要在什么级别保存该注释信息,用于描述注解的生命周期(即:被描述的注解在什么范围内有效)
取值 |
有效范围 |
SOURCE |
在源文件中有效(即源文件保留) |
CLASS |
在class文件中有效(即class保留) |
RUNTIMR |
在运行时有效(即运行时保留) |
5. @Component
泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注
6. @RequestMapping
1.基本用法 就是spingMvc传入web请求地址根据地址找到处理的类
其中可以处理多个URL
@RestController
@RequestMapping("/home")
public class IndexController {
@RequestMapping("/")
String get() {
//mapped to hostname:port/home/
return "Hello from get";
}
@RequestMapping(value = {
"",
"/page",
"page*",
"view/*,**/msg"
})
String indexMultipleMapping() {
return "Hello from index multiple mapping.";
}
}
2. @RequestParam与@RequestMapping结合使用 其中param如果与传入的参数值一样,可以省略,也就是去掉下面代码中的 id
@RestController
@RequestMapping("/home")
public class IndexController {
@RequestMapping(value = "/id")
String getIdByValue(@RequestParam("id") String personId) {
System.out.println("ID is " + personId);
return "Get ID from query string of URL with value element";
}
}
3. 用@RequestMapping处理HTTP的各种方法
Spring MVC 的 @RequestMap