我试过了,但找不到正确的答案,你能帮我一下吗?表正在创建,但数据没有插入。我修复了上述错误,但数据没有插入Hibernatetemplate保存()的数据库中。
yfwxisqw1#
@Transactional(propagation=Propagation.REQUIRED,readOnly=false) public class StudentDaoImplHT implements StudentDao { private HibernateTemplate ht; public void setHt(HibernateTemplate ht) { this.ht = ht; } @Transactional @Override public int save(Student st) { int i=(Integer) ht.save(st);; System.out.println(st.getId()); System.out.println(st.getAddress()); System.out.println(st.getEmail()); System.out.println(st.getName()); return i; } @Override public boolean update(Student st) { ht.saveOrUpdate(st); return true; } @Override public boolean delete(Student st) { //ht.delete(st); return true; } @Override public Student findByPK(int id ) { Student std=(Student) ht.get(Student.class, id); return std; } @Override public List<Student> findByAllUsingHQL() { List<Student> list=(List<Student>) ht.find("from Student"); return list; } @Override public List<Student> findByAllUsingCriteria() { DetachedCriteria dc=DetachedCriteria.forClass(Student.class); //dc.setProjection(projection); //ht.findByCriteria(criteria) List<Student> list= (List<Student>) ht.findByCriteria(dc); return null; } }
cs7cruho2#
确保您的hibernate.cfg.xml中有以下属性:
hibernate.cfg.xml
"hibernate.connection.autocommit" true" property name="hibernate.connection.autocommit" true property
希望有帮助。
iyr7buue3#
刚刚在我的DAO类上使用了@EnableTransactionManagement &这实际上对我很有效。
3条答案
按热度按时间yfwxisqw1#
cs7cruho2#
确保您的
hibernate.cfg.xml
中有以下属性:希望有帮助。
iyr7buue3#
刚刚在我的DAO类上使用了@EnableTransactionManagement &这实际上对我很有效。