注解(Annotation)

什么是注解:


内置注解:


自定义注解:

元注解:

其中:@Target

@Retention

SOURCE反射读不到

RUNTIME运行时加载Annotation到JVM

* 使用反射读取注解的信息,模拟处理注解信息的流程

*/

public class Demo03 {

public static void main(String[] args) {

try {

Class clazz = Class.forName(“com.bjsxt.test.annotation.SxtStudent”);

@SxtTable(“tb_student”)//

@Target(value={ElementType.TYPE})//类

@Retention(RetentionPolicy.RUNTIME)

public @interface SxtTable {

String value();

}

public class SxtStudent {

@SxtField(columnName=“id”,type=“int”,length=10)//

@Target(value={ElementType.FIELD})

@Retention(RetentionPolicy.RUNTIME)

public @interface SxtField {

String columnName();//id

String type();//int

int length();//10

}

private int id;

@SxtField(columnName=“sname”,type=“varchar”,length=10)

private String studentName;

@SxtField(columnName=“age”,type=“int”,length=3)

private int 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;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

}

//获得类的所有有效注解

Annotation[] annotations=clazz.getAnnotations();

for (Annotation a : annotations) {

System.out.println(a);//@com.bjsxt.test.annotation.SxtTable(value=“tb_student”)

}

//获得类的指定的注解

SxtTable st = (SxtTable) clazz.getAnnotation(SxtTable.class);

System.out.println(st.value());//tb_student

//获得类的属性的注解

Field f = clazz.getDeclaredField(“studentName”);

SxtField sxtField = f.getAnnotation(SxtField.class);

System.out.println(sxtField.columnName()+"–"+sxtField.type()+"–"+sxtField.length());//sname–varchar–10

//根据获得的表名、字段的信息,拼出DDL语句,然后,使用JDBC执行这个SQL,在数据库中生成相关的表

} catch (Exception e) {

e.printStackTrace();

}

}

}
th());//sname–varchar–10

//根据获得的表名、字段的信息,拼出DDL语句,然后,使用JDBC执行这个SQL,在数据库中生成相关的表

} catch (Exception e) {

e.printStackTrace();

}

}

}

十三、注解(高琪java300集+java从入门到精通笔记)相关推荐

  1. 【160天】尚学堂高琪Java300集视频精华笔记(129)

    明天开始,专栏增加一个黑马程序员的课程更新. 其它容器收尾讲解 队列Queue与Deque(单向队列与双向队列) Enumeration(较老的接口,JDK1.5前使用频繁,维护旧系统会用到) Has ...

  2. java高淇_高淇java300集JAVA常用类作业

    一.选择题 1. 以下选项中关于int和Integer的说法错误的是( B D).(选择二项) A.int是基本数据类型,Integer是int的包装类,是引用数据类型 B.int的默认值是0,Int ...

  3. 尚学堂 高琪JAVA300集第十一章作业 编程题答案

    本人 JAVA初学者 在寻找这一方面的答案时没有看见 ,本着分享的精神 自己做了出来 也就传上来了 水平有限 存在有错的地方或者改进的方法 ,望大佬们可以提出 万分感谢. 1.1. 设计一个多线程的程 ...

  4. Java从入门到精通笔记20230106--百钱百鸡引出的疑问

    一.5文钱可以买1只公鸡,3文钱可以买1只母鸡,1文钱可以买3只雏鸡,现在用100文钱买100只鸡,那么公鸡.母鸡.雏鸡各有多少只? 1.Python写法 首先在Python刷题时遇到过,实现起来相对 ...

  5. java从入门到精通二十三(Servlet)

    java从入门到精通二十三(Servlet) Servlet 说明 Servlet初步入门尝试 Servlet生命周期 Servlet方法说明和体系结构 方法说明 体系结构说明 一些优化封装 urlP ...

  6. java从入门到精通_想要开始学java?你要的java从入门到精通布列如下!

    java从入门到精通,让我来告诉你! 毫无疑问,java是当下最火的编程语言之一.对于许多未曾涉足计算机编程的领域「小白」来说,深入地掌握java看似是一件十分困难的事.其实,只要掌握了科学的学习方法 ...

  7. 详细:JAVA从入门到精通视频教程,后台学习历程

    详细:JAVA从入门到精通视频教程,后台学习历程 ==基础部分 由于百度分享有时效性 想要免费资源的请加645969403 1.java基础:高琪java开发300集 链接:https://pan.b ...

  8. java从入门到精通第四版明日科技书籍简介及下载

    Java从入门到精通(第4版)(附光盘) 平装 – 2016年10月20日 <Java从入门到精通(第4版)(附光盘)>从初学者角度出发,通过通俗易懂的语言.丰富多彩的实例,详细介绍了使用 ...

  9. Java从入门到精通十一(javaIO流)

    Java从入门到精通十一(javaIO流) IO引入 字节流和字符流(一些说明) 字节流没有用到缓冲区并不是没有用到内存 为什么输入流是读数据,而输出流是写数据? 字节流说明 字节输入流读数据的方法 ...

  10. java从入门到精通二十四(三层架构完成增删改查)

    java从入门到精通二十四(三层架构完成增删改查) 前言 环境准备 创建web项目结构 导入依赖和配置文件 创建层次模型 实现查询 实现添加 实现修改 完成删除 做一个用户登录验证 会话技术 cook ...

最新文章

  1. php ajax formdata 进度,使用formdata使用ajax将数据发送到PHP
  2. Linux 卸载旧版本的 JDK 并且升级新的JDK 【转】
  3. 页面按钮埋点+跟踪location.search
  4. 树莓派上传数据到onenet云平台
  5. springboot 控制台程序读取配置文件(原创)
  6. RELL软件测试初学者化妆品,浅析软件测试流程在高校软件测试工作室中的应用...
  7. shell脚本发邮件内容html,Shell发送邮件以HTML展示
  8. Linux-Can't create socket: Too many open files
  9. python中try怎么用_python下try
  10. 腾讯互娱开源分布式开发框架Pebble
  11. Two Shuffled Sequences
  12. 昨日种种,昨日死.今日种种,今日生.--看了几篇影评有感
  13. tensorflow笔记 tf.metrics.accuracy
  14. 一个PHP程序员的职业生涯技术提升阶梯规划方案
  15. Hadoop分布式集群
  16. 前端开发规范V2023.5
  17. 用R进行多元线性回归分析建模
  18. 偏微分方程(Partial Differential Equation I)
  19. Fragment Transactions Activity State Loss
  20. 如何整理撰写舆情信息报告的方法技巧

热门文章

  1. JavaScript throw 语句
  2. 李娟计算机学院,李娟(青岛农业大学教授)_百度百科
  3. WordPress 安装时出现的问题
  4. 验证OpenVino时,找不到指定模块的解决
  5. RestTemplate总结
  6. SMA(简单移动平均线)
  7. harry potter
  8. Jupyter Notebook设置黑色背景主题,字体大小,代码自动补全
  9. python三国演义人物出场_Python教你查询《三国演义》书籍人物出场次序
  10. sudo rosdep init 失败的解决方法(适用于非自身设备网络、证书等故障的情况)