我使用: 的Eclipse的Java EE IDE Web開發 版本:靛藍髮布如何在Eclipse中使用Hibernate Tools生成DAO?
與Hibernate工具,我是新在Eclipse中冬眠,所以我學會了如何配置Hibernate和生成POJO與註釋(我認爲這比.xml更好)。
所以產生我的POJO的和DAO的我試圖做一個插入,但推出「零點異常」到我的實體管理器之後,這是怎麼冬眠工具正在生成DAO類:
嘗試使用DAO產生:
public static void main(String[] args) {
// TODO Auto-generated method stub
User user = new User();
user.setEmail("[email protected]");
user.setPassword("123456");
user.setReputation(0);
DaoUser daoUser = new DaoUser();
daoUser.persist(user);
}
DAO產生:
package com.example.pojo;
// Generated 30/08/2011 20:43:29 by Hibernate Tools 3.4.0.CR1
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
/**
* Home object for domain model class User.
* @see com.example.pojo.User
* @author Hibernate Tools
*/
@Stateless
public class UserHome {
private static final Log log = LogFactory.getLog(UserHome.class);
@PersistenceContext
private EntityManager entityManager;
public void persist(User transientInstance) {
log.debug("persisting User instance");
try {
entityManager.persist(transientInstance);
log.debug("persist successful");
} catch (RuntimeException re) {
log.error("persist failed", re);
throw re;
}
}
public void remove(User persistentInstance) {
log.debug("removing User instance");
try {
entityManager.remove(persistentInstance);
log.debug("remove successful");
} catch (RuntimeException re) {
log.error("remove failed", re);
throw re;
}
}
public User merge(User detachedInstance) {
log.debug("merging User instance");
try {
User result = entityManager.merge(detachedInstance);
log.debug("merge successful");
return result;
} catch (RuntimeException re) {
log.error("merge failed", re);
throw re;
}
}
public User findById(Integer id) {
log.debug("getting User instance with id: " + id);
try {
User instance = entityManager.find(User.class, id);
log.debug("get successful");
return instance;
} catch (RuntimeException re) {
log.error("get failed", re);
throw re;
}
}
}
我想我必須做一些錯誤的配置過程。 我應該如何正確設置我的課程和道教的?
我不是在任何地方注入實體管理器,實際上是在使用NetBeans中的休眠之前使用會話工廠。 我運行的主要方法只是爲了測試操作是否正常,所以然後我插入然後在web項目。 我應該如何設置我的實體管理器? –
我收錄了一個代碼片斷,顯示了一種你可以獲得實體管理器實例的方法。你還需要爲你的UserHome類添加一個setter。 – javamonkey79
我該如何創建一個persistence.xml文件?我在哪裏放?你知道任何教程嗎? –