Hibernate找不到现有的字符串

时间:2015-05-27 20:01:35

标签: java hibernate jetty

我有一个与mysql有hibernate连接的jetty服务器。

当我尝试获取记录时,它在服务器启动之前添加到数据库中 - 它会成功返回。但是当我在服务器工作时从mysql控制台向数据库插入记录并尝试使用hibernate获取此记录时 - 它返回null。

public Book getBook(int id, Session session) throws SQLException {
    Book result = null;
    try {
        result = (Book) session.get(Book.class, id);
    }catch(Exception e) {
        e.printStackTrace();
    }finally {
        if((session != null) && session.isOpen())session.close();
    }
    return result;
}

我真的不知道如何解决它。

1 个答案:

答案 0 :(得分:2)

从另一个终端打开另一个MySQL会话,检查是否可以看到插入数据库的数据。如果你看不到它,那么问题在于你的插入操作没有被提交。

如果你能看到它,那么Hibernate也应该能够看到它,因为它应该发出类似的查询。要确定您可以打开Hibernate日志记录以检查实际发送的查询

log4j.logger.org.hibernate.SQL = DEBUG

log4j.logger.org.hibernate.type = TRACE