注解

一、org.springframework.web.bind.annotation

ControllerAdvice
CookieValue : 可以把Request header中关于cookie的值绑定到方法的参数上。
CrossOrigin
ExceptionHandler
InitBinder
Mapping
MatrixVariable
ModelAttribute : 代表的是,该Controller的所有方法在调用前,先执行此ModelAttribute方法,可用于注解和方法参数中,可以把这个ModelAttribute特性,应用在BaseController当中,所有的Controller继承BaseController,即可实现在调用Controller时,先执行@ModelAttribute方法。
PathVariable : 用于将请求URL中的模板变量映射到功能处理方法的参数上,即取出uri模板中的变量作为参数。
RequestBody : 该注解常用来处理Content-Type: 不是application/x-www-form-urlencoded编码的内容,例如application/json, application/xml等。
RequestHeader : 可以把Request请求header部分的值绑定到方法的参数上。
RequestMapping : 用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。
RequestParam : 主要用于在SpringMVC后台控制层获取参数。
RequestPart :
ResponseBody : 该注解用于将Controller的方法返回的对象,通过适当的HttpMessageConverter转换为指定格式(json,xml)后,写入到Response对象的body数据区。
ResponseStatus
RestController
SessionAttributes : 将值放到session作用域中,写在class上面。

二、org.springframework.stereotype

Component  : 是所有受Spring 管理组件的通用形式,@Component注解可以放在类的头上,@Component不推荐使用。

Controller :  @Controller对应表现层的Bean,也就是Action

Repository : @Repository对应数据访问层Bean

Service : @Service对应的是业务层Bean

三、org.springframework.beans.factory.annotation

Autowired : 做bean的注入时使用
Configurable
Lookup
Qualifier
Required
Value : 对一些如xxx.properties文件中的文件,进行键值对的注入。

四、org.springframework.context.annotation
Bean
ComponentScan:表示开启Spring Beans扫描,类似于XML配置,这里也可以可以设置basePackages属性。
Conditional
Configuration:表示这个Java文件是一个配置文件,这类Java代码的作用在于配置,要和普通的Java代码区分开发,因此一般我们需要将其放在一个专门的包中
DependsOn
Description
EnableAspectJAutoProxy
EnableLoadTimeWeaving
EnableMBeanExport
Import
ImportResource
Lazy
Primary
Profile
PropertySource
PropertySources
Role
Scope : 用来定义Bean的作用范围。

五、javax.annotation
Generated
PostConstruct:在bean构造函数之后执行,init()方法之前执行(影响Servlet生命周期的注解)
PreDestroy:bean销毁destroy()之前调用的方法(影响Servlet生命周期的注解)
Resource : 做bean的注入时使用。
Resources

六、java.lang.annotation

这个包下是元注解,就是修饰注解的注解。

Target:说明了Annotation所修饰的对象范围

Retention:定义了该Annotation被保留的时间长短

Documented:用于描述其它类型的annotation应该被作为被标注的程序成员的公共API,因此可以被例如javadoc此类的工具文档化。Documented是一个标记注解,没有成员。

Inherited:阐述了某个被标注的类型是被继承的。如果一个使用了@Inherited修饰的annotation类型被用于一个class,则这个annotation将被用于该class的子类。
Native
Repeatable:

FunctionalInterface:函数式接口

Lambda表达式是如何在java的类型系统中表示的呢?每一个lambda表达式都对应一个类型,通常是接口类型。而“函数式接口”是指仅仅只包含一个抽象方法的接口,每一个该类型的lambda表达式都会被匹配到这个抽象方法。因为 默认方法 不算抽象方法,所以你也可以给你的函数式接口添加默认方法。
我们可以将lambda表达式当作任意只包含一个抽象方法的接口类型,确保你的接口一定达到这个要求,你只需要给你的接口添加 @FunctionalInterface 注解,编译器如果发现你标注了这个注解的接口有多于一个抽象方法的时候会报错的。

七、java.lang

SuppressWarnings:禁用警告

Deprecated:废弃

参考 : 注解用法详解——@SuppressWarnings

参考资料:

http://www.cnblogs.com/leskang/p/5445698.html

http://blog.csdn.net/jzhf2012/article/details/8463783

http://www.360sdn.com/springmvc/2013/0627/407.html

深入理解Java:注解(Annotation)自定义注解入门

Java内置系统注解和元注解

Java8中的类型注解浅析

java8 新增的@Repeatable注解

Java学习记录-注解的更多相关文章

  1. Java学习:注解,反射,动态编译

    狂神声明 : 文章均为自己的学习笔记 , 转载一定注明出处 ; 编辑不易 , 防君子不防小人~共勉 ! Java学习:注解,反射,动态编译 Annotation 注解  什么是注解 ? Annotat ...

  2. Java学习之注解篇

    Java学习之注解篇 0x00 前言 续上篇文章,这篇文章就来写一下注解的相关内容. 0x01 注解概述 Java注解(Annotation)又称Java标注,是JDK5.0约会的一种注释机制. 和J ...

  3. 0035 Java学习笔记-注解

    什么是注解 注解可以看作类的第6大要素(成员变量.构造器.方法.代码块.内部类) 注解有点像修饰符,可以修饰一些程序要素:类.接口.变量.方法.局部变量等等 注解要和对应的配套工具(APT:Annot ...

  4. java学习之注解

    0x00前言 1.注解是什么: (1)可以叫做注释类型,注解是一种引用数据类型,编译后也是生成class文件 (2)提供信息给编译器: 编译器可以利用注解来探测错误和警告信息 比如 @Override ...

  5. Java 学习记录

    •Eclipse相关 Eclipse常用设置 解决 Eclipse 项目中有红色感叹号的详细方法(图文) JRE System Library [JavaSE-1.8](unbound) •Java ...

  6. Java学习之注解Annotation实现原理

    前言: 最近学习了EventBus.BufferKinfe.GreenDao.Retrofit 等优秀开源框架,它们新版本无一另外的都使用到了注解的方式,我们使用在使用的时候也尝到不少好处,基于这种想 ...

  7. Java学习记录第一章

    学习Java第一章的记录,这一章主要记录的是Java的最基础部分的了解知识,了解Java的特性和开发环境还有Java语言的优缺点. 计算机语言的发展大概过程:机器语言--->汇编语言---> ...

  8. Java学习之==>注解

    一.概述 关于注解,首先引入官方文档的一句话:Java 注解用于为 Java 代码提供元数据.作为元数据,注解不直接影响你的代码执行,但也有一些类型的注解实际上可以用于这一目的.接下我将从注解的定义. ...

  9. Java学习记录 : 画板的实现

    接触java不满一个月,看厚厚的java入门简直要醉,故利用实例来巩固所学知识. 画板的实现其实从原理来说超级简单,可能一会儿就完成了. 但作为一名强迫症患者,要实现和win下面的画板一样的功能还是需 ...

随机推荐

  1. CSS鼠标样式整理

    鼠标样式的标签: cursor:*;  //该属性定义了鼠标指针放在一个元素边界范围内时所用的光标形状: 鼠标样式: 值 描述 url 需使用的自定义光标的 URL. 注释:请在此列表的末端始终定义一 ...

  2. Floyd最短路算法

    Floyd最短路算法 ----转自啊哈磊[坐在马桶上看算法]算法6:只有五行的Floyd最短路算法 暑假,小哼准备去一些城市旅游.有些城市之间有公路,有些城市之间则没有,如下图.为了节省经费以及方便计 ...

  3. Linux下的ip命令,除了ifconfig还有很多

    linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者.使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务.ifconfig是net-tools中已被废弃使用的一个命 ...

  4. SPI试验---verilog(实用单通模式)

    SPI通信的读写操作 一.     SPI简介: SPI的通信原理很简单,它以主从方式工作,这种模式通常有一个主设备和一个或多个从设备,需要至少4根线,事实上3根也可以(单向传输时).也是所有基于SP ...

  5. oracle的启动过程(各个模式启动)

    启动模式详解 1.NoMount 模式(启动实例不加载数据库) 命令:startup nomount 讲解:这种启动模式只会创建实例,并不加载数据库,Oracle仅为实例创建各种内存结构和服务进程,不 ...

  6. Python读写文件乱码问题

    对开发者来说,最恼人的问题之一莫过于读写文件的时候,由于编码千差万别,出现乱码问题.好难快速解决啊... 最近我也遇到了这样的问题,经研究,把大致的解决思路拿出来共享. 1. python中习惯首先声 ...

  7. Android Studio 获取 sha1-wangfeng520@

    WIN+R   打开“运行”  输入  CMD 回车 2 CD C:\Program Files\Java\jdk1.7.0_71\bin     (JDK安装路径) keytool -list -v ...

  8. Hark的数据结构与算法练习之梳排序

    算法说明梳排序是交换排序的一种,它其实也是改自冒泡排序,不同之处是冒泡排序的比较步长恒定为1,而梳排序的比较步长是变化的. 步长需要循环以数组长度除以1.3,到最后大于等于1即可. 光说可能比较抽象, ...

  9. Ecological Premium

    #include<bits/stdc++.h> using namespace std; int main() { int n,m; unsigned long long int a,b, ...

  10. Xamarin Anroid App访问网站失败

    Xamarin Anroid App访问网站失败 错误信息:net::ERR_NAME_NOT_RESOLVED如果电脑同时有有线网卡和无线网卡,电脑使用无线网卡上网,而有线网卡不上网.这时,就会出现 ...