java常用注解

定义

Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制
Java 语言中的类、方法、变量、参数和包等都可以被标注。和 Javadoc 不同,Java 标注可以通过反射获取标注内容。
在编译器生成类文件时,标注可以被嵌入到字节码中。Java 虚拟机可以保留标注内容,在运行时可以获取到标注内容 。
当然它也支持自定义 Java 标注

Java内置注解

作用在代码注解

@Override // 检查该方法是否是重写方法。如果发现其父类,或者是引用的接口中并没有该方法时,会报编译错误。
@Deprecated // 标记过时方法。如果使用该方法,会报编译警告。
@SuppressWarnings // 指示编译器去忽略注解中声明的警告。

作用在其他注解的注解(或者说 元注解)

@Retention // 标识这个注解怎么保存,是只在代码中,还是编入class文件中,或者是在运行时可以通过反射访问。
@Documented // 标记这些注解是否包含在用户文档中。
@Target // 标记这个注解应该是哪种 Java 成员。
@Inherited // 标记这个注解是继承于哪个注解类(默认 注解并没有继承于任何子类)

Java7开始额外添加的3个注解

@SafeVarargs // Java 7 开始支持,忽略任何使用参数为泛型变量的方法或构造函数调用产生的警告。
@FunctionalInterface // Java 8 开始支持,标识一个匿名函数或函数式接口。
@Repeatable // Java 8 开始支持,标识某注解可以在同一个声明上使用多次

Spring注解

@Controller  // 用于标注控制层,相当于struts中的action层,用在类
@Service  // 用于标注服务层,主要用来进行业务的逻辑处理
@Repository(“名称”): // 用于标注数据访问层,用在mapper类(dao层)
@RestController  // 返回json数据,接口常用,用在类
@Component  // 是spring中的一个注解,它的作用就是实现bean的注入(衍生注解:@Controller @Service @Repository)
@Autowired // Spring 容器启动的时候会查找相应的 Bean。可以用在成员变量、方法及构造函数

路由注解

SpringMVC注解

@RequestMapping("/demo")  // 路由,用在类
@GetMapping("/demo/getMsg")   // 路由,用在方法
@postMapping("/demo/getMsg")   // 路由,用在方法

数据访问层注解

mybatis

@MapperScan("com.example.demo.mapper")  // 扫描dao层的mapper组件,用在入口类
@Repository(“名称”): // 用于标注数据访问层dao层,用在mapper类
@Resource  //注解mapper,用在属性

微服务

SpringCloud

@FeignClient("hotel-operation-platform-message")   // 调用其他微服务
@FeignClient(value="xxx-xxx-xxx", url="127.0.0.1:8080")  // 调用其他微服务 - 指定地址

其他

@JsonProperty  // fastjson包的注解,驼峰命变量和下划线格式转换。用在属性
@slf4j  // 日志门面,可以自由选择驱动,而无需维护日志具体的实现类和方法,用于类
posted @ 2022-05-31 17:36  续断  阅读(278)  评论(0编辑  收藏  举报