Hibernate不保存对象

时间:2017-08-14 21:01:19

标签: java mysql hibernate

我已经在NetBeans 8.2上创建了表ip并通过向导创建了映射文件。 那是ip架构: enter image description here

并添加到hibernate config

<property name="connection.autocommit">true</property>

但是当我尝试向表查询插入内容时,不会执行。 在其他表上它可以工作。

    Session session = HibernateUtil.getSessionFactory().openSession();
    Ip info = new Ip();
    info.setAsn("aaaa");
    info.setCity("aaaa");
    info.setCountry("aa");
    info.setIp(213213);
    info.setIsp("aaaa");
    info.setLat(44.4);
    info.setLon(55.5);
    info.setOrg("aaaa");
    info.setRegion("aaaa");
    session.save(info);

2 个答案:

答案 0 :(得分:1)

您需要调用ourdata

自动提交有关将数据推送到数据库而不调用session.flush()方法的信息。

答案 1 :(得分:0)

在休眠状态下,只有transacion中包含的操作才会被发送到数据库。 所以正确的代码是:

 Session session = HibernateUtil.getSessionFactory().openSession();
 Ip info = new Ip();
info.setAsn("aaaa");
info.setCity("aaaa");
info.setCountry("aa");
info.setIp(213213);
info.setIsp("aaaa");
info.setLat(44.4);
info.setLon(55.5);
info.setOrg("aaaa");
info.setRegion("aaaa");
Transaction t = session.beginTransaction();
session.save(info);
t.commit();

执行hibernte会将插件发送到数据库,但是不能立即(确实是这样)确保立即发送它必须用session.flush()刷新会话但这是一个加号 希望这个帮助 河