Chinaunix首页 | 论坛 | 博客
  • 博客访问: 507479
  • 博文数量: 158
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 904
  • 用 户 组: 普通用户
  • 注册时间: 2016-10-10 11:17
文章分类

全部博文(158)

文章存档

2018年(74)

2017年(84)

我的朋友

分类: Java

2017-11-23 14:41:39

 随着泛型用的越来越多,获取泛型实际类型信息的需求也会出现。java.lang.reflect.Type及其派生类是原生操作泛型的api,较难使用,写起代码来比较繁琐。spring在这之上封装了一个工具类org.springframework.core.ResolvableType大大简化了泛型的获取使用。

            以下场景:

            在一个泛型父类里面要获取各个子类的泛型具体类型。如下:

                    


            在Child1.getGenericClass()的时候要得到Entity1,在Child2.getGenericClass()的时候要得到Entity2。


实现如下:

     

            可以看到成功获取了具体的类型。


            不仅如此,同样也能获取字段、方法的泛型

            

            


            感兴趣的同学可以去试下org.springframework.core.ResolvableType类下的其他方法,这个对于写框架特别适用。


阅读(1064) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~