0
下面的代码使用JPA和Spring,并且可以在表格“游戏”中创建一行。可以使用EntityManager(JPA)创建函数处理任何类型的对象吗?
@Repository
@Transactional
public class GameDao {
/**
* Save the game in the database.
*/
public void create(Game game) {
entityManager.persist(game);
return;
}
// An EntityManager will be automatically injected from entityManagerFactory
// setup on DatabaseConfig class.
@PersistenceContext
private EntityManager entityManager;
}
看着这个创建函数,我不知道它是如何找到它应该插入的表?
如果它可以从参数类型(游戏游戏)中找到表格,我可以创建一个名为CreateDao的类并从那里执行所有的创建操作?
不确定我完全理解这个问题。它找到表格是因为Game添加在persistence.xml文件中,并用'@ Entity'注释,可能类似于@Table(name =“game_tbl”)'。理论上,是的,你可以创建1个通用DAO,但是你必须严重依赖Java泛型。 –
回答第二个问题,您可以在此博客中找到一个很好的示例:[用于生成更简单的REST式Web服务的NetBeans](https://dzone.com/articles/nb-generate-simpler-rest)。使用它或查看'AbstractFacade'类 –
perissf
的实现可能出现[Single DAO&generic CRUD methods(JPA/Hibernate + Spring)]的重复(http://stackoverflow.com/questions/3888575/single-dao-generic- crud-methods-jpa-hibernate-spring) –