特定のdaoを返すDAOFactoryがあります
public class DAOFactory {
public static final int DAO1 = 1;
public static final int DAO2 = 2;
public static Object getDao(int dao) {
switch (dao) {
case DAO1:
return new Dao1();
case DAO2:
return new Dao2();
}
return null;
}
}
ダオはの子供です
abstract class GenericDao<E, ID extends Serializable> implements
GenericDaoInterface<E, ID>
したがって、次のようになります。
public class Dao1 extends GenericDao<Dao1, Integer>{
....
}
そして、新しいダオを作成した場合。型キャストをしなければなりません。
Dao1 dao = (Dao1) DAOFactory.getDao(DAOFactory.DAO1);
自動型キャストを行うことは可能ですか、それとも DAOFactory でメソッドを作成して特定の dao を呼び出す方がよいですか? 例えば。public static Dao1 getDao1()