JAVA使用反射机制和注解实现对信息的处理-----JAVA入门基础教程

这篇具有很好参考价值的文章主要介绍了JAVA使用反射机制和注解实现对信息的处理-----JAVA入门基础教程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

import java.lang.annotation.Annotation;
import java.lang.reflect.Field;

public class AnnotationTest
{
    public static void main(String[] args) throws Exception
    {
        Class c = Class.forName("Customer");
        c = Customer.class;
        Table table = (Table)c.getDeclaredAnnotation(Table.class);
        System.out.println(table.value());
        Annotation[] annotations = c.getDeclaredAnnotations();
        for(Annotation annotation : annotations)
        {
            System.out.println(annotation.annotationType().getName());
        }
        Field name = c.getDeclaredField("name");
        Column column = name.getDeclaredAnnotation(Column.class);
        System.out.println(column.columnName());
        System.out.println(column.columnType());
    }
}

import java.lang.annotation.Annotation;
import java.lang.reflect.Field;

public class AnnotationTest
{
public static void main(String[] args) throws Exception
{
Class c = Class.forName("Customer");
c = Customer.class;
Table table = (Table)c.getDeclaredAnnotation(Table.class);
System.out.println(table.value());
Annotation[] annotations = c.getDeclaredAnnotations();
for(Annotation annotation : annotations)
{
System.out.println(annotation.annotationType().getName());
}
Field name = c.getDeclaredField("name");
Column column = name.getDeclaredAnnotation(Column.class);
System.out.println(column.columnName());
System.out.println(column.columnType());
}
}

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import static java.lang.annotation.ElementType.FIELD;

@Target({FIELD})
@Retention(RetentionPolicy.RUNTIME)
public @interface Column
{
    String columnName();
    String columnType();
}

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import static java.lang.annotation.ElementType.FIELD;

@Target({FIELD})
@Retention(RetentionPolicy.RUNTIME)
public @interface Column
{
String columnName();
String columnType();
}

@Table(value = "t_Customer")
public class Customer
{
    @Column(columnName = "Customer_Name",columnType = "varchar(15)")
    private String name;
    @Column(columnName = "age",columnType = "int")
    public int age;
    public Customer()
    {
        System.out.println("Customer");
    }
    public Customer(int age)
    {
        this.age = age;
    }
    private Customer(String name,int age)
    {
        this.age = age;
        this.name = name;
    }

}

@Table(value = "t_Customer")
public class Customer
{
@Column(columnName = "Customer_Name",columnType = "varchar(15)")
private String name;
@Column(columnName = "age",columnType = "int")
public int age;
public Customer()
{
System.out.println("Customer");
}
public Customer(int age)
{
this.age = age;
}
private Customer(String name,int age)
{
this.age = age;
this.name = name;
}

}

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import static java.lang.annotation.ElementType.*;

@Target({TYPE})
@Retention(RetentionPolicy.RUNTIME)
public @interface Table
{
    String value() default "Stop";
}

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import static java.lang.annotation.ElementType.*;

@Target({TYPE})
@Retention(RetentionPolicy.RUNTIME)
public @interface Table
{
String value() default "Stop";
}文章来源地址https://www.toymoban.com/news/detail-607042.html

到了这里,关于JAVA使用反射机制和注解实现对信息的处理-----JAVA入门基础教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java中反射机制,枚举,Lambda的使用

    目录 一、反射机制 1、含义 2、作用 3、※反射相关的几个类 3.1、Class类(Class对象是反射的基石) 3.2、Class类中相关的方法 3.2.1 (※重要)常用获得类相关的方法 3.2.2 (※重要)常用获得类中属性、变量Field相关的方法  3.2.3 获得类中注解相关的方法  3.2.4(※重要)获得类中构造

    2024年02月11日
    浏览(37)
  • java注解与反射

    java注解与反射十分重要,是很多框架的底层 注解的作用: 注解的格式:@注释名,如@override表示重写方法,而且有些还可以添加一些参数值,如@SuppressWarnings(value=\\\"unchecjed\\\") 注解可以附加在package,class,method,field等上面,相当于添加了额外的辅助信息。可以通过反射机制编程

    2024年02月07日
    浏览(40)
  • 【JAVA】单元测试、反射、注解、动态代理

    @Test 测试方法 @Before 用来修饰实例方法,该方法会在每一个测试方法执行之前执行一次。 @After 用来修饰实例方法,该方法会在每一个测试方法执行之后执行一次。 @Before Class 用来静态修饰方法,该方法会在所有测试方法之前只执行一次。 @After Class 用来静态修饰方法,该方法

    2024年02月11日
    浏览(34)
  • Java补充内容(Junit 反射 注解)

    测试分类: 1. 黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值。 2. 白盒测试:需要写代码的。关注程序具体的执行流程。 Junit使用:白盒测试 步骤: 定义一个测试类(测试用例) 建议: 测试类名:被测试的类名Test CalculatorTest 包名:xxx.xxx.xx.test cn.itcast.

    2024年02月16日
    浏览(29)
  • Java高级技术:单元测试、反射、注解

    目录 单元测试 单元测试概述 单元测试快速入门 单元测试常用注解 反射 反射概述 反射获取类对象 反射获取构造器对象 反射获取成员变量对象 反射获取方法对象 反射的作用-绕过编译阶段为集合添加数据 反射的作用-通用框架的底层原理 注解 注解概述 自定义注解 元注解

    2024年01月16日
    浏览(40)
  • spring boot 使用AOP+自定义注解+反射实现操作日志记录修改前数据和修改后对比数据,并保存至日志表

    使用FieldMeta自定义注解,看个人业务自行觉得是否需要重新定义实体 实现类 :通过该实现类获取更新前后的数据。 该实现类的实现原理为:获取入参出入的id值,获取sqlSessionFactory,通过sqlSessionFactory获取selectByPrimaryKey()该方法,执行该方法可获取id对应数据更新操作前后的数

    2024年01月23日
    浏览(41)
  • Java中的反射(通过反射获取类的结构、invoke方法、获取注解)

    创建运行时类的对象是反射机制应用最多的地方。创建运行时类的对象有两种方式: 方式1:直接调用Class对象的newInstance()方法 要求: 1)类必须有一个无参数的构造器。 2)类的构造器的访问权限需要足够。 方式一的步骤 : 1)获取该类型的Class对象 2)调用Class对象的 new

    2024年02月04日
    浏览(35)
  • Java笔记040-反射/反射机制、Class类

    目录 反射(reflection) 一个需求引出反射 反射机制 Java反射机制原理图 Java反射机制可以完成 反射相关的主要类 反射机制的优点和缺点 反射调用优化-关闭访问检查 Class类 基本介绍 代码解释部分 类加载方法 应用实例:Class02.java 获取Class类对象 代码解释部分 哪些类型有Class对象

    2024年02月09日
    浏览(36)
  • Java的反射机制

    Java 的反射机制允许在程序运行期间,借助反射 API 获取类的内部信息,并能直接操作对象的内部属性及方法。 Java 反射机制提供的功能: 在运行时,使用反射分析类的能力,获取有关类的一切信息(类所在的包、类实现的接口、标注的注解、类的数据域、类的构造器、类的

    2024年02月02日
    浏览(32)
  • Java反射、代理机制

    官方解释:反射允许对封装类的字段、方法和构造方法的信息进行编程访问。 虚拟机加载类文件后,会在方法区生成一个类对象,包含了类的结构信息,如字段、方法、构造方法等。反射是一种能够在程序运行时动态访问、修改类对象中任意属性的机制(包括private属性)。

    2024年02月10日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包