このメソッドは正常に動作しています。ここで私はブックテーブルから最大bookidをフェッチしていますが、データベースがnullの場合、NULLポインタ例外が発生しています。したがって、この例外を処理する方法。mysqlクエリを使用してnullデータベースを処理する方法
public void insertData() {
Transaction tx = null;
Session session = getSession();
try {
tx = session.beginTransaction();
Book book = new Book();
SQLQuery query = session.createSQLQuery("select MAX(bookid) from books");
List<Book> rows = query.list();
for (Object row : rows) {
book.setBookid(Integer.parseInt(row.toString()));
Integer id1 = book.getBookid() + 1;
selbookid = id1;
}
book.setBookname("Java");
book.setDateofcreation(new Date());
book.setLastmodifieddate(new Date());
session.save(book);
tx.commit();
session.flush();
session.close();
} catch (RuntimeException e) {
e.printStackTrace();
}
}
「データベースがnullの場合」、それはもっと正確にはどういう意味ですか?ヌルが分かっている場合は、スタックトレースまたはデバッガを使用して見つけてください。 –
どこで 'NullPointerException'が発生しますか?メソッド 'getSession'では?それからあなたはそれを確認して処理する必要がありますか?私にとってそれはあなたの問題が何であるかは不明です... –
データベースがnullであることを意味しています....本の表はヌルですか?スタックトレースを更新できますか? –