JDK自带注解

@Override  重写, 标识覆盖它的父类的方法

@Deprecated    已过期,表示方法是不被建议使用的

@Suppvisewarnings   压制警告,抑制警告

元注解

@Target   表示该注解用于什么地方,可取的值包括:

ElemenetType.CONSTRUCTOR       构造器声明

ElemenetType.FIELD          域声明(包括 enum 实例)

ElemenetType.LOCAL_VARIABLE     局部变量声明

ElemenetType.METHOD         方法声明

ElemenetType.PACKAGE         包声明

ElemenetType.PARAMETER       参数声明

ElemenetType.TYPE          类,接口(包括注解类型)或enum声明

ElementType.ANNOTATION_TYPE     注解

@Retention   表示在什么级别保存该注解信息。可选的 RetentionPolicy 参数包括:

RetentionPolicy.SOURCE       注解将被编译器丢弃

RetentionPolicy.CLASS        注解在class文件中可用,但会被VM丢弃

RetentionPolicy.RUNTIME       JVM将在运行期也保留注释,因此可以通过反射机制读取注解的信息。

@Documented   将此注解包含在 javadoc 中

@Inherited   允许子类继承父类中的注解

常见第三方注解

@Repository:    用于标注数据访问组件,即DAO组件

@Service:    用于标注业务层组件

@Transactional:    声明这service所有方法都需要事务管理。每一个业务方法开始时都会打开一个事务

@Controller:    控制层

@Component:    把该中立的类交给spring管理

@Autowired:    自动装配,将bean容器里的值自动注入到bean

@Path:      处理REST请求,接口路径

@Method:

常用的HTTP动词有下面五个(括号里是对应的SQL命令)。

GET(SELECT):从服务器取出资源(一项或多项)。

POST(CREATE):在服务器新建一个资源。

PUT(UPDATE):在服务器更新资源(客户端提供改变后的完整资源)。

PATCH(UPDATE):在服务器更新资源(客户端提供改变的属性)。

DELETE(DELETE):从服务器删除资源。

还有两个不常用的HTTP动词。

HEAD:获取资源的元数据。

OPTIONS:获取信息,关于资源的哪些属性是客户端可以改变的。

@Accept和@Content-Type

@Accept:    就表示接口要返回给客户端的数据格式

@Content-Type:    表示客户端发送给服务器端的数据格式。这个是写REST接口时候定义的

正常如果服务器没定义Accept但是自己添加了的话会报404,没找到对应接口。

@Produces表示类或者方法返回的MIME数据类型

有几种格式如下:

(1)@Produces("text/plain") 文本类型

(2)@Produces("text/html")  Html类型

(3)@Produces({"application/xml"}) Xml类型

(4)@Produces({ "application/json"}) Json类型

可以一次注解两种或多种的MIME类型,格式如:{"application/xml", "application/json"}这表示两者都可以使用,但是选择的时候一般会选择前者,即application/xml,因为它第一次出现。

@Consumes    代表的是一个资源可以接受的 MIME 类型

@Queryparam与@Pathparam

@Queryparam:指定的是URL中的参数是以键值对的形式出现的,而在程序中 @QueryParam("from")  int from则读出URL中from的值,

例如:URL输入为:users?from=100&to=200&orderBy=age&orderBy=name

@Pathparam:URL中只出现参数的值,不出现键值对

例如: /users/100

JAVA系统注解图

java有哪些注解_JAVA常用注解相关推荐

  1. postmapping注解_Swagger常用注解

    在使用swagger时候如果掌握一些注解的使用,则在开发过程中测试的时候可以事半功倍,尤其在与前端技术进行联调,前端技术在访问swagger中的每个api时,可以很清楚的知道每个url对应的请求类型. ...

  2. java 获取类的注解_Java 自定义注解通过反射获取类、方法、属性上的注解

    反射 JAVA中的反射是运行中的程序检查自己和软件运行环境的能力,它可以根据它发现的进行改变.通俗的讲就是反射可以在运行时根据指定的类名获得类的信息. 注解的定义 注解通过 @interface 关键 ...

  3. java 元数据 注解_Java:注解(元数据)

    初识Java注解 所谓的元数据是指用来描述数据的数据,可能刚听到元数据的时候你会有点陌生,其实任何一个使用过struts或者hibernate的开发人员都在不知不觉中使用元数据,更通俗一点来说元数据是 ...

  4. Java中12 种 Spring 常用注解,必须记住!

    1.声明bean的注解 @Component 组件,没有明确的角色 @Service 在业务逻辑层使用(service层) @Repository 在数据访问层使用(dao层) @Controller ...

  5. java 导出excel 注解_Java基于注解和反射导入导出Excel

    list = ei.getDataList(User.class); for (User user : list){ try{ //to do: 保存/处理数据 //userService.save( ...

  6. java注释的简单_Java简单注解

    3)按照规定使用注解,但是并不将它保留到编译后的类文件中 import java.util.ArrayList; import java.util.Date; import java.util.Lis ...

  7. java 获取接口的注解_java反射注解妙用-获取所有接口说明

    前言 最近在做项目权限,使用shiro实现restful接口权限管理,对整个项目都进行了重构.而权限管理需要用到所有的接口配置,包括接口url地址,接口唯一编码等.想要收集所有的接口信息,如果工程接口 ...

  8. java privilege的用法_java反射--注解的定义与运用以及权限拦截

    自定义注解类编写的一些规则: 1. Annotation型定义为@interface, 所有的Annotation会自动继承java.lang.Annotation这一接口,并且不能再去继承别的类或是 ...

  9. java运行时读取注解_Java自定义注解和运行时靠反射获取注解

    转:1.Annotation的工作原理: JDK5.0中提供了注解的功能,允许开发者定义和使用自己的注解类型.该功能由一个定义注解类型的语法和描述一个注解声明的语法,读取注解的API,一个使用注解修饰 ...

最新文章

  1. OpenCASCADE:读IGES
  2. 使用 NetCoreBeauty 优化 .NET CORE 独立部署目录结构
  3. Android代码混淆方法,Android 代码混淆零基础入门
  4. 广东理工学院计算机考试大纲,2020年广东理工学院专插本专业课考试大纲汇总...
  5. velocity 将数字转为以万为单位,保留2位小数
  6. Illustrator中文版教程,如何在 Illustrator 中为创建的图形添加颜色?
  7. 安全基础-防火墙四种登录方式 SSH Telnet SSH
  8. android 脚本模拟点击屏幕,android 脚本模拟点击屏幕,android模拟
  9. od 查找特征码和特征码模糊搜索教程
  10. 华为笔记本没有HOME键和END键
  11. 前端实现搜索联想时防抖功能:
  12. C#语言跟WPF学习视频
  13. 十只老鼠和一千瓶毒药的故事
  14. SunPinyin代码导读-SLM部分
  15. java人民币换欧元_关于java:用于存储货币汇率的设计
  16. HPB-Wallet:HPB钱包助记词生成和备份
  17. Win32 学习笔记_列表控件(ListBox)
  18. win10安装VMware workstation Pro和Ubuntu20.04过程及注意事项
  19. a-frame_使用A-Frame,PubNub和WebVR构建基于浏览器的多人VR游戏
  20. 小霸王游戏机太low?树莓派用RetroPie 4.4 变身为复刻版游戏机

热门文章

  1. 微程序与微指令和微命令
  2. 每个程序员都有的经历:从程序员到高级架构师,必须经历的三个阶段
  3. matlab 输入坐标,matlab中坐标希腊符号的输入方法
  4. python应用如何实现升级_基于esky实现python应用的自动升级详解
  5. 巴斯扩散模型-Bass Diffusion Model
  6. 大数据时代:如何守护我们的数据安全
  7. 殷墟申请世界文化遗产成功
  8. C++模拟OpenGL库——图片处理及纹理系统(四):UV纹理坐标
  9. 最短路 HDU - 2544 (最短路)
  10. Java利用Gzip对字符串进行压缩与解压