HibernateTemplate保存()未使用spring将数据插入数据库

5t7ly7z5  于 2023-10-23  发布在  Spring
关注(0)|答案(3)|浏览(112)

我试过了,但找不到正确的答案,你能帮我一下吗?表正在创建,但数据没有插入。我修复了上述错误,但数据没有插入Hibernatetemplate保存()的数据库中。

yfwxisqw

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;
    }
}
cs7cruho

cs7cruho2#

确保您的hibernate.cfg.xml中有以下属性:

"hibernate.connection.autocommit" true"

property name="hibernate.connection.autocommit" true property

希望有帮助。

iyr7buue

iyr7buue3#

刚刚在我的DAO类上使用了@EnableTransactionManagement &这实际上对我很有效。

相关问题