java 获取所有带注解的类

Python013

java 获取所有带注解的类,第1张

既然是基于spring,可以这样: ResourcePatternResolver rpr = new PathMatchingResourcePatternResolver()Resource[] res = rpr.getResources("classpath*: **/*.class")// classpath*:带*号会找jar中的class然后根据resource取clas路径就行String className = res[0].getURL().getPath()className = className.split("(classes/)|(!/)")[1]className = className.replace("/", ".").replace(".class", "")Object obj = Class.forName(className)话说我最近也在写一个这样的MVC。。要不咱两合伙? 我写的也是基于注解,不过要支持REST风格

如这个类:

import java.util.*

import java.lang.String

public class Info {

Date date = null

java.sql.Date sqlDate = new java.sql.Date(date.getTime())

public List<String>getTimes(Integer in,String s){

date = new Date()

List<String>as = new ArrayList<String>()

as.add("s")

as.add("1")

return as

}

}

我怎么得到所引用的类是:

java.util.Date,

java.util.List,

java,util.ArrayList,

java.lang.String,

java.lang.Integer

我使用的是eclipse ast, 可以得到但是不对,比如:

得到字段申明:

1,Date date = null //这个我只能得到类型为Date,而且不是java.util.Date,因此我无法知道,这个Date是java.util.Date,还是java.sql.Date

java.sql.Date sqlDate = new java.sql.Date(date.getTime()) //这个得到的类型就是直接是:java.sql.Date

问题:请问这个应该怎么确定?

2,还有返回类型:public List<String>getTimes(Integer in,String s)。这个返回是List<String>,我这怎么确实这个带有泛型的类型?

3,还有关于注解的类型,不过注解我想一定要先引入包吧。

4,如果我在代中用到没有申明的类,应该怎么得到呢?如:

Calendar cal = Calendar.getInstance()