通过泛型与反射的结合,可以编写框架来使开发更容易,这里演示的是BaseDao部分的简单使用。
BaseDao部分代码:
public abstract class BaseDao<T>{ private Class clazz;//具体的实体类 public BaseDao(){ //必须知道具体操作的哪个类,给clazz赋值 Type type = this.getClass().getGenericSuperclass();//得到当前对象的带有泛型信息的父类型 如:BaseDao<Person> Parameterized pType=(Parameterized)type; clazz=(Class)pType.getActualTypeArguments()[0];//得到实际的参数泛型类型 Person } //下面就是一些CRUD的操作了。。。略 }