Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 冬眠可以';找不到现有字符串_Java_Hibernate_Jetty - Fatal编程技术网

Java 冬眠可以';找不到现有字符串

Java 冬眠可以';找不到现有字符串,java,hibernate,jetty,Java,Hibernate,Jetty,我有一个jetty服务器,与mysql有hibernate连接 当我尝试获取在服务器启动之前添加到数据库中的记录时,它会成功地返回该记录。但当我在服务器工作时从mysql控制台向数据库插入记录并尝试使用hibernate获取该记录时,它返回null public Book getBook(int id, Session session) throws SQLException { Book result = null; try { result = (Book)

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

当我尝试获取在服务器启动之前添加到数据库中的记录时,它会成功地返回该记录。但当我在服务器工作时从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;
}

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

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

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

log4j.logger.org.hibernate.SQL=DEBUG


log4j.logger.org.hibernate.type=TRACE

我想知道如何解决这个问题。。。好问题