0 0

问一个注解的问题5

刚接触注解,很多地方不明白。

比如我定义了一个注解
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface TestA{
}


然后凡是在调用标了这个注解的方法的时候做一点事情。

于是我用反射的方式做到了这一点。

Class<?> clazz = Class.forName("test.TestClass");
Method method = clazz.getDeclaredMethod("method");
TestA testA = method.getAnnotation(TestA .class);
if(testA != null){
then do something...
}


但是有个问题,程序在运行时,是不可能知道到底哪些类的哪些方法标了@TestA的,如果用反射就必须事先知道哪个类的哪个方法。

在平时的开发中,spring有自动扫描机制来扫描指定包下面的注解,struts2可以用拦截器拦截ActionInvocation获取其中的类名和方法名,
如果我在一个纯javaSE的应用里,想用注解,不用拦截,也不用spring,有没有办法做到这一点?
换句话说,就是
public static void main(String[] args){
    new TestClass().method();
}

就能自动处理method上的注解?
2012年8月03日 11:43

1个答案 按时间排序 按投票排序

0 0

那就你用proxy写代理类了  不自己代理估计没办法完成  除非你每个method里面显示的去处理自己的annatation

2012年8月03日 11:55

相关推荐

    java中使用@Nullable 注解的详细用法

    起初,以为这么简单的一个常用注解还不了解吗? 用法 @Nullable可以用在方法、属性、参数上。对应的意思分别如下: 方法:表示返回值可以是空 属性:表示属性值可以是空 参数:表示参数值可以是空 用在方法上 ...

    基于maven的SSH 最新全注解整合框架

    基于maven的Spring3、Struts2.3、Hibernate4.1.9 最新全注解整合框架,完美运行,包括struts配置文件的常用解释(可以实现零配置),hibernate4的新用法和声明式的AOP事物...供大家学习,对全注解的方式不明白的可以问我

    计算机后端-Java-Java核心基础-第23章 枚举类与注解 18. 可重复注解中元注解不一致的问题解决.avi

    计算机后端-Java-Java核心基础-第23章 枚举类与注解 18. 可重复注解中元注解不一致的问

    20 面试官,请不要再问我@Resource和@Autowire注解的区别了慕课专栏(1)1

    这意味着如果你有一个名为`myService`的bean,你可以在另一个bean中使用`@Resource`注解来注入这个`myService`: ```java @Resource private MyService myService; ``` 这里,`myService`字段会被Spring容器自动...

    spring注解+hibernate注解 part3

    这是第3部分,有问题问我,我QQ是523998647

    spring注解+hibernate注解 part2

    工程比较大,总共有4个部分 大家慢慢下吧 绝对经典 里面含spring整合hibernate后的XML事物处理 还有静态页面生成的代码,可以直接运行大家自己看下吧 有问题可以直接问我,QQ523998647 群QQ 113258925

    背包问题九讲

    分组的背包问题可以通过将每组视为一个整体来简化问题,进而应用已知的背包问题解法。 #### 七、有依赖的背包问题 **7.1 简化的问题** 物品之间存在依赖关系,例如某些物品必须在其他物品之前放入背包。 **7.2 ...

    spring+hibernate(注解完整工程) part1

    spring注解+hibernate注解完整工程可以直接运行 期间有大量注释便于学习和沟通,如果有任何问题可以直接问我,我的QQ是523998647,群号是113258925

    SSM-xml+注解-员工信息管理+总结笔记+数据库文件.zip

    SSM-xml+注解-员工信息管理+总结笔记+...主要利用xml配置问价+注解整合SSM框架,在此基础上实现一套crud。 前端没有使用模板,所以大道至简,主要是联系ssm框架的整合方法。 适用于正在学的java的朋友们借鉴学习。

    分布式锁:最强、最方便,一行代码搞定全部,免费提供技术支持,不懂就问

    它允许多个节点在同一时间只能有一个节点获得锁并执行相应的操作,防止并发问题,如数据不一致性和死锁。本方案提供了一种简单高效的方法,通过一行代码即可实现分布式锁,特别适合初学者和快速开发。 在分布式环境...

    SSM-xml+注解整合SSM框架-《员工信息管理系统》-功能演示.mp4

    SSM-xml+注解整合SSM框架-《员工信息管理系统》-功能演示.mp4 ...主要利用xml配置问价+注解整合SSM框架,在此基础上实现一套crud。 前端没有使用模板,所以大道至简,主要是联系ssm框架的整合方法。

    Java基础重点.rar_java面试会问到的问题2

    11. **注解(Annotation)**:注解提供了一种元数据方式,面试官可能询问自定义注解的创建和使用,以及反射中如何读取注解信息。 12. **Java 8及更高版本的新特性**:如Lambda表达式、Stream API、Optional类、日期...

    面试中可能被问到的JAVA问题

    - **函数式接口**:函数式接口是指仅有一个抽象方法的接口,可以被当作lambda表达式的类型使用。 **3. 注解** - **注解的使用场景**:注解用于为代码添加元数据,可用于各种目的,如验证、配置、注解驱动开发等。 ...

    proxool 多数据源动态切换,刚刚一网友问我,顺便写的一个demo

    总之,Proxool多数据源动态切换是一个涉及到数据库连接池管理、配置文件解析、数据源选择和事务管理等多个层面的技术问题。在实际开发中,通过合理的配置和代码设计,可以实现高效且灵活的数据库访问策略。

    关于Spring中常被问到的一些问题

    Spring是一个开源的Java平台,它是为了解决企业级应用开发的复杂性而设计的。Spring框架的核心特性包括轻量级、控制反转(IoC)、面向切面编程(AOP)以及容器功能。 在开发中,Spring经常用于实现企业级应用的各种...

    整理了一个关于网上java问与答的一个手册

    这份手册源自一个知名的IT社区博客,博主“寒冰”分享了他在Java领域的经验和见解,形成了丰富的问答集合。下面将详细阐述手册中的关键知识点。 一、基础概念 1. Java简介:手册会讲解Java的历史、特性,以及为什么...

    Java面试可能问的问题.docx

    【Java面试可能问的问题】 1. **Spring的AOP(面向切面编程)**:AOP允许程序员定义“横切关注点”,如日志、事务管理等,然后将这些关注点与业务逻辑分离。在Spring中,AOP通过代理模式实现,可以是JDK动态代理或...

    javac-warning-annotation:轻量级 javac @Warning 注解

    常问问题: 问: @Warning 注释是干什么用的? A:用于从 java 编译器 (javac) 抛出警告消息。 问:何时以及为什么可以使用它? A:当你想将某段代码标记为“危险”或“不稳定”等时(不要经常这样做) 问:为...

    JAVA中高级面试题库,也是很多公司问的高频问题

    8. **反射与注解**:反射是Java动态性的一个重要体现,它允许在运行时检查类、接口、字段和方法的信息。注解则提供了一种元数据的方式,可以用于代码的自描述。面试中可能涉及如何使用反射进行对象创建、方法调用,...

Global site tag (gtag.js) - Google Analytics