`
zhouxingfu520
  • 浏览: 422919 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

简单利用java反射 理解注解的作用

阅读更多

在新版框架中 都加入了 注解大大减少了xml配置的臃肿。

 

 

新建注解

 

@Retention(RetentionPolicy.RUNTIME)
public @interface NewHelloWord {
             public String value() default "hello";	
	
}

 

通过反射 实现方法调用前后 注解的功能。

 

public class Parser {
	public void parse(Object obj, String methodName) {
		Method[] ms = obj.getClass().getMethods();
		for (Method m : ms) {
			if (m.getName().equals(methodName)) {
                                    该类是否使用了注解
                                    if (m.isAnnotationPresent(NewHelloWord.class)) {
                                           获取注解
                                          NewHelloWord hw = m.getAnnotation(NewHelloWord.class);
					//System.out.println(hw.value());
					try {
						System.out.println(hw.value() + " before...");
						m.invoke(obj, new Object[] {});
						System.out.println(hw.value() + " after...");
					} catch (Exception e) {
						e.printStackTrace();
					}
				}
			}
		}
	}
}

 

 

  测试bean 使用了注解

@NewHelloWord
public class TestBean {

	public TestBean(String name) {
		this.name = name;
	}

	@NewHelloWord("你好")
	private String name;

	@Override
	@NewHelloWord
	public String toString() {
		System.out.println(this.name);
		return this.name;
	}
}

 

 

测试

 

public class MainTest {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		TestBean tb = new TestBean("abcd");
		Parser p = new Parser();

		p.parse(tb, "toString");
	}

}

 

 

最后输出

 

hello before...
abcd
hello after...

分享到:
评论

相关推荐

    利用java反射、注解及泛型模拟ORM实现

    这篇博文“利用java反射、注解及泛型模拟ORM实现”旨在探讨如何结合这三种技术来实现对象关系映射(ORM),这是一种将数据库表与Java对象之间进行绑定的技术,简化了数据操作。 首先,我们来理解一下这三个概念: ...

    java 通过反射获取类上注解,方法上注解,注解里的值及方法参数

    在Java编程中,注解(Annotation)是一种元数据,它提供了在代码中插入信息的方式,这些信息可以被编译器或运行时环境...通过实践这个例子,你可以更好地理解和掌握这些概念,从而在实际项目中更有效地利用注解和反射。

    java注解、java反射机制 jdbc 封装

    通过学习这个案例,开发者可以深入理解如何在实际项目中有效利用Java的注解和反射机制,提升代码质量和可维护性。 总之,这个案例结合了Java的三大利器——注解、反射和JDBC,旨在创建一个高效、灵活且易于扩展的...

    Java基础入门四泛型反射注解.pdf

    在Java基础入门四泛型、反射、注解的学习中,我们会了解到如何正确使用泛型来创建更加健壮的代码,如何利用反射机制实现类和对象的动态操作,以及如何利用注解来简化开发过程和提高代码的可读性。 此外,文档中提到...

    java自定义注解和通过反射获取注解

    Java自定义注解和通过反射获取...总的来说,理解并熟练掌握Java自定义注解和反射的使用,对于提升Java开发者的编程能力和编写高质量代码具有重要意义。通过深入学习和实践,你可以创造出更加优雅和强大的Java应用程序。

    Java注解与反射原理说明

    Java注解(Annotation)是Java语言提供的一种元数据机制,允许程序员在代码中嵌入信息,这些信息可以被编译器、JVM或其他工具在编译时或运行时读取...理解并熟练掌握注解和反射的使用,对于提升Java编程能力至关重要。

    servlet反射注解例子

    总结来说,这个“servlet反射注解例子”旨在展示如何在Servlet中利用注解简化配置,并结合反射来动态处理这些注解。通过学习这个例子,我们可以更好地理解和掌握Java Web开发中的核心概念,提高我们的编程效率和代码...

    Java反射、泛型和注解实战之Spring核心注入IOC的实现

    通过这个实战项目,你可以深入理解Java反射、泛型和注解的用法,并且了解到如何利用它们构建一个基本的依赖注入系统,这将有助于你更好地理解和使用Spring框架。同时,这样的实践也有助于提升你的编程技能,使你能够...

    Java反射动态修改注解的某个属性值.Java

    本文将深入探讨如何通过Java反射来动态修改注解的某个属性值。 首先,了解注解的基本结构。注解是由`@`符号开始,后面跟着注解的名称和一组键值对组成的。例如,自定义注解`@MyAnnotation(name="test")`,其中`name...

    使用反射和注解模拟Spring的依赖注入

    我们将深入探讨反射和注解这两个关键概念,以及它们如何在模拟依赖注入中发挥作用。 首先,让我们理解反射的概念。反射是Java提供的一种能力,允许程序在运行时检查和操作类、接口、方法和字段。在Java中,`java....

    Spring IOC 原理 ,Java 反射实例,自定义注解

    关于Java反射的实例,我们可以创建一个简单的例子。假设我们有一个接口`Service`和两个实现类`ServiceImpl1`、`ServiceImpl2`。在不使用反射的情况下,我们通常会通过new关键字创建服务对象。而通过反射,可以在运行...

    java注解_反射_字节码_类加载机制.zip

    Java注解、反射、字节码和类加载机制是Java编程中的核心概念,它们在实际开发中扮演着重要角色。...通过深入学习和实践,你可以更高效地编写和维护代码,同时也能更好地理解和利用Java生态系统中的各种工具和框架。

    java反射-英文版反射规范

    ### Java反射机制详解 #### 一、概述 ...通过以上介绍,我们不仅深入了解了Java反射的基本概念和应用场景,还学习了如何利用反射来处理各种类型的数据结构。这对于深入理解和应用Java语言具有重要意义。

    北大青鸟java反射机制

    此外,Java反射机制也广泛应用于注解处理。`Annotation`接口代表了类、方法、字段等上的注解。我们可以使用`isAnnotationPresent(Class<? extends Annotation> annotationClass)`检查是否存在特定注解,`...

    java 反射ppt 和 code 示例

    通过这份资料,开发者不仅可以理解Java反射的基本概念,还能通过实例学习到反射在实际项目中的应用技巧,提升编程的灵活性和可扩展性。同时,对反射的深入理解和正确使用,也能帮助解决很多设计模式和框架中的核心...

    java通用注解API

    通过阅读《Java通用注解和API规范.pdf》这份文档,你可以更深入地理解Java注解的原理、使用方法以及最佳实践,从而在实际开发中更好地利用这一强大的工具。这份文档涵盖了从基础概念到高级特性的全面内容,对于Java...

    java反射实例代码

    Java反射是Java编程语言中的一个重要特性,它允许运行时的程序访问、操作和修改自身的行为。这个特性使得Java具有了动态性...通过深入学习和实践,开发者能够充分利用Java反射的能力,编写出更加灵活和强大的应用程序。

    java反射经典实例

    在本“Java反射经典实例”中,我们将深入探讨这个主题,了解如何利用反射来访问和修改私有属性以及调用私有方法。 1. **反射的概念与用途** - 反射机制是在运行时分析类的能力,它允许我们获取类的信息(如类名、...

    java反射机制文档及代码

    Java反射机制是Java编程语言中一个...通过阅读"1139760298222java.pdf"这份文档,你可以更深入地理解Java反射机制,并结合实际示例学习如何在项目中有效利用这一特性。记得在实际操作中结合代码实践,以巩固理论知识。

    java反射和注解开发(备java基础,javaee框架原理)

    Java反射和注解是Java开发中的重要特性,它们在现代Java EE框架中起着至关重要的作用。本文将深入探讨这两个概念及其在实际开发中的应用。 首先,Java反射机制允许程序在运行时动态地获取类的信息并操作类的对象。...

Global site tag (gtag.js) - Google Analytics