在新版框架中 都加入了 注解大大减少了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实现”旨在探讨如何结合这三种技术来实现对象关系映射(ORM),这是一种将数据库表与Java对象之间进行绑定的技术,简化了数据操作。 首先,我们来理解一下这三个概念: ...
在Java编程中,注解(Annotation)是一种元数据,它提供了在代码中插入信息的方式,这些信息可以被编译器或运行时环境...通过实践这个例子,你可以更好地理解和掌握这些概念,从而在实际项目中更有效地利用注解和反射。
通过学习这个案例,开发者可以深入理解如何在实际项目中有效利用Java的注解和反射机制,提升代码质量和可维护性。 总之,这个案例结合了Java的三大利器——注解、反射和JDBC,旨在创建一个高效、灵活且易于扩展的...
在Java基础入门四泛型、反射、注解的学习中,我们会了解到如何正确使用泛型来创建更加健壮的代码,如何利用反射机制实现类和对象的动态操作,以及如何利用注解来简化开发过程和提高代码的可读性。 此外,文档中提到...
Java自定义注解和通过反射获取...总的来说,理解并熟练掌握Java自定义注解和反射的使用,对于提升Java开发者的编程能力和编写高质量代码具有重要意义。通过深入学习和实践,你可以创造出更加优雅和强大的Java应用程序。
Java注解(Annotation)是Java语言提供的一种元数据机制,允许程序员在代码中嵌入信息,这些信息可以被编译器、JVM或其他工具在编译时或运行时读取...理解并熟练掌握注解和反射的使用,对于提升Java编程能力至关重要。
总结来说,这个“servlet反射注解例子”旨在展示如何在Servlet中利用注解简化配置,并结合反射来动态处理这些注解。通过学习这个例子,我们可以更好地理解和掌握Java Web开发中的核心概念,提高我们的编程效率和代码...
通过这个实战项目,你可以深入理解Java反射、泛型和注解的用法,并且了解到如何利用它们构建一个基本的依赖注入系统,这将有助于你更好地理解和使用Spring框架。同时,这样的实践也有助于提升你的编程技能,使你能够...
本文将深入探讨如何通过Java反射来动态修改注解的某个属性值。 首先,了解注解的基本结构。注解是由`@`符号开始,后面跟着注解的名称和一组键值对组成的。例如,自定义注解`@MyAnnotation(name="test")`,其中`name...
我们将深入探讨反射和注解这两个关键概念,以及它们如何在模拟依赖注入中发挥作用。 首先,让我们理解反射的概念。反射是Java提供的一种能力,允许程序在运行时检查和操作类、接口、方法和字段。在Java中,`java....
关于Java反射的实例,我们可以创建一个简单的例子。假设我们有一个接口`Service`和两个实现类`ServiceImpl1`、`ServiceImpl2`。在不使用反射的情况下,我们通常会通过new关键字创建服务对象。而通过反射,可以在运行...
Java注解、反射、字节码和类加载机制是Java编程中的核心概念,它们在实际开发中扮演着重要角色。...通过深入学习和实践,你可以更高效地编写和维护代码,同时也能更好地理解和利用Java生态系统中的各种工具和框架。
### Java反射机制详解 #### 一、概述 ...通过以上介绍,我们不仅深入了解了Java反射的基本概念和应用场景,还学习了如何利用反射来处理各种类型的数据结构。这对于深入理解和应用Java语言具有重要意义。
此外,Java反射机制也广泛应用于注解处理。`Annotation`接口代表了类、方法、字段等上的注解。我们可以使用`isAnnotationPresent(Class<? extends Annotation> annotationClass)`检查是否存在特定注解,`...
通过这份资料,开发者不仅可以理解Java反射的基本概念,还能通过实例学习到反射在实际项目中的应用技巧,提升编程的灵活性和可扩展性。同时,对反射的深入理解和正确使用,也能帮助解决很多设计模式和框架中的核心...
通过阅读《Java通用注解和API规范.pdf》这份文档,你可以更深入地理解Java注解的原理、使用方法以及最佳实践,从而在实际开发中更好地利用这一强大的工具。这份文档涵盖了从基础概念到高级特性的全面内容,对于Java...
Java反射是Java编程语言中的一个重要特性,它允许运行时的程序访问、操作和修改自身的行为。这个特性使得Java具有了动态性...通过深入学习和实践,开发者能够充分利用Java反射的能力,编写出更加灵活和强大的应用程序。
在本“Java反射经典实例”中,我们将深入探讨这个主题,了解如何利用反射来访问和修改私有属性以及调用私有方法。 1. **反射的概念与用途** - 反射机制是在运行时分析类的能力,它允许我们获取类的信息(如类名、...
Java反射机制是Java编程语言中一个...通过阅读"1139760298222java.pdf"这份文档,你可以更深入地理解Java反射机制,并结合实际示例学习如何在项目中有效利用这一特性。记得在实际操作中结合代码实践,以巩固理论知识。
Java反射和注解是Java开发中的重要特性,它们在现代Java EE框架中起着至关重要的作用。本文将深入探讨这两个概念及其在实际开发中的应用。 首先,Java反射机制允许程序在运行时动态地获取类的信息并操作类的对象。...