我正在尝试编写简单的 DAO,它将根据存储在 String 字段中的类型创建实体对象。如何返回动态更改的类型?UserDAO 类的方法 findById() 应该返回 User 类对象。ProductDAO 的相同方法应该返回 Product。我不想在每个扩展 DAO 的类中实现 findById,它应该自动完成。
示例代码:
class DAO {
protected String entityClass = "";
public (???) findById(int id) {
// some DB query
return (???)EntityFromDatabase; // how to do this?
}
}
class UserDAO extends DAO {
protected String entityClass = "User";
}
class ProductDAO extends DAO {
protected String entityClass = "Product";
}
class User extends Entity {
public int id;
public String name;
}