このコードから私が理解しているのは、genericDao はTypeLiteral<T>
T が Bean.class を拡張する型のオブジェクトを返すことになっているということです。
public <T extends Bean> TypeLiteral<T> genericDao() {
return (TypeLiteral<T>) TypeLiteral.get(Types.newParameterizedType(
GenericDao.class, type, getKey()));
}
しかし、メソッドはこのように書かれるべきではありませんか?
public TypeLiteral< T extends Bean> genericDao() {
return (TypeLiteral<T>) TypeLiteral.get(Types.newParameterizedType(
GenericDao.class, type, getKey()));
}