Hibernate查询和列表对象

时间:2015-07-15 07:49:22

标签: java mysql hibernate select hql

我想在数据库中从我的表中获取一个id,但如果我尝试通过名称获取id,我必须将它保存在列表obj中,所以我不能再次使用表中的id,因为它一个对象,而不是一个整数。

我更新表格的方法:

public void updateEvent (String eventName, String beschreibung, String datum, String ort) {

    AnnotationConfiguration configuration = new AnnotationConfiguration();
    configuration.configure();
    SessionFactory sessionFactory = configuration.buildSessionFactory();
    Session session = sessionFactory.openSession();
    Transaction transaction = session.beginTransaction();

    String hql = "select a.eventID from AdminToolBean a where a.name = :Name";
    Query query = session.createQuery(hql);
    query.setParameter ("Name", eventName);
    List<AdminToolBean> results = (List<AdminToolBean>) query.list();

    System.out.println(results.get(0));
    System.out.println(results.get(1));
    System.out.println(results.get(2));

    AdminToolBean event = (AdminToolBean) session.load(AdminToolBean.class, results.get(0));

    event.setName(eventName);
    event.setBeschreibung(beschreibung);
    event.setDatum(datum);
    event.setOrt(ort);
    session.update(event);
    transaction.commit();
    session.close();
}       

1 个答案:

答案 0 :(得分:0)

如果您只需要一个id,而不是一个对象,请使用简单的jdbc。 Spring有jdbcTemplate或iBatis / myBatis框架。