`

HIbernate获得多关系的集合泛型核心方法

阅读更多
突然发现

	@OneToMany
	@JoinColumn(name = "REFER_TO_ENTERPRISE_ID"
	@LazyCollection(LazyCollectionOption.FALSE)
	public Set<EnterpriseObject> getReferToEnterpriseObject() {
		return referToEnterpriseObject;
	}


hibernate会根据Set<EnterpriseObject>得到类型,本以为反射获得泛型除了"擦出大法"外没别的办法,今天看见了希望

根了好久代码,可算把这段代码找到了

org.hibernate.reflection.java.JavaXMember



Type org.hibernate.reflection.java.JavaXMember.typeOf(Member member, TypeEnvironment env)



在这里记录下,方便以后使用

然后再仿照我的例子就出来结果了


package test.泛型.反射获得泛型;

import java.lang.reflect.Type;
import java.util.Set;

import sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl;

/**
 * 
 * @author lidongbo
 * 2010-12-28
 */
public class Color {
	
	public Set<Color> test(){
		return null;
	}
	
	public static void main(String[] args) throws SecurityException, NoSuchMethodException {
		
		Type mTypes = Color.class.getDeclaredMethod("test").getGenericReturnType();
		System.out.println(((ParameterizedTypeImpl)mTypes).getActualTypeArguments()[0]);
	}
	
}
1
2
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics