注解

一.五个预置注解

    1.@Override    
    2.@SafeVarargs
    3.@Functionallnterface
    4.@Deprecated
 //表明此方法已过时
@Deprecated   //@Target(value={CONSTRUCTOR, FIELD, LOCAL_VARIABLE, METHOD, PACKAGE, PARAMETER, TYPE})
        public String toString() {
            return null;         
          }  
     5.@SuppressWarnings
 //抑制编译时的警告信息,加上参数才能使用:deprecation:使用了过时的类或方法的警告
        //                           unchecked:执行了未检查的转换时的警告,如使用集合时未指定泛型
        //                           fallthrough:当在switch语句使用时发生了case穿透
        //                           path:在类路径,源文件路径等不存在路径的警告
        //                           serial:当在可序列化的类上缺少serialVersionID定义时的警告
        //                           finally:任何finally子句不能完成时的警告
        //                           all:以上所有警告
                                 //                 类型    (域)       方法           参数               构造器                 局部变量
    @SuppressWarnings//@Target({TYPE,FIELD,METHOD, PARAMETER, CONSTRUCTOR, LOCAL_VARIABLE})
       (value={"all"})

        int a; //此句没警告
        int b;//此句有警告
二:自定义注解

   
  /** 元注解:注解其他注解@Target,@Retention,@Documented,@Inherited */
@Target(value={ElementType.METHOD,ElementType.TYPE })     //描述注解使用范围,此处表明注解只能用在类型,方法前面
@Retention (RetentionPolicy.RUNTIME)//描述注解生命周期1.source:源文件中有效
                                                                                //           2.class:在字节码文件中有效
                                                                                //           3.runtime:在运行时有效

自定义注解与ORM简例:
ORM(Object RelationShip Mapping)
   类与表对应
   属性与字段对应
   对象与记录对应

FieldDemo 注解

@Target (ElementType.FIELD)
@Retention (RetentionPolicy.RUNTIME)
public @interface FieldDemo {

       //类型 + 名称+ 括号

       String columnName();//列名,对应记录  
       String type();//类型
       int  length();//长度
}

TableDemo注解
@Target (ElementType.TYPE)
@Retention (RetentionPolicy.RUNTIME)
       public @interface TableDemo {
             String value();//对类的注解,对应表名
}
@TableDemo(value = "tb_atudent")//这个类对应的表名为tb_atudent
 public class Student {
 @FieldDemo (columnName = "id",type = "int",length = 10)
 private int id;//这个属性对应的字段叫"id",类型type = "int",长度length =10
 @FieldDemo (columnName = "studentName",type = "varChar",length = 10)
 private String studentName;//这个属性对应的字段叫"studentName",类型type = "varChar",长度length =10
 @FieldDemo (columnName = "age",type = "int",length = 3)
 private int age;
 public Student(int age, int id, String studentName) {
  super();
  this.age = age;
  this.id = id;
  this.studentName = studentName;
 }
 public int getAge() {
  return age;
 }
 public void setAge(int age) {
  this.age = age;
 }
 public int getId() {
  return id;
 }
 public void setId(int id) {
  this.id = id;
 }
 public String getStudentName() {
  return studentName;
 }
 public void setStudentName(String studentName) {
  this.studentName = studentName;
 }
}


阅读更多
上一篇java变量
下一篇反射
想对作者说点什么? 我来说一句

springboot注解

2017年09月23日 14KB 下载

java注解代码java注解代码

2011年05月17日 7KB 下载

JPA注解.doc J PA注解.

2011年08月19日 42KB 下载

基于注解的 ssh

2011年08月26日 19.1MB 下载

spring3.0MVC注解

2011年06月25日 484KB 下载

hiberante3 注解帮助文档

2009年06月10日 647KB 下载

注册表 +注解

2009年04月03日 264KB 下载

编译时注解

2017年10月17日 4.32MB 下载

Spring MVC 基于注解实例

2010年07月11日 7.19MB 下载

ssh2+注解OA系统

2011年06月07日 13.95MB 下载

没有更多推荐了,返回首页

关闭
关闭