HQLクエリでHibernateテーブルがマッピングされていないエラーが発生する
2023-07-11 06:49:06
質問
Hibernateを使用してデータベース上でCRUD操作を行うWebアプリケーションを持っています。テーブルがマッピングされていないというエラーが発生しました。Javaファイルを参照してください。
エラーメッセージです。
org.springframework.orm.hibernate3.HibernateQueryException: Books is not mapped [SELECT COUNT(*) FROM Books]; nested exception is org.hibernate.hql.ast.QuerySyntaxException: Books is not mapped [SELECT COUNT(*) FROM Books]
at org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:660)
at org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:412)
at org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:411)
...
Caused by: org.hibernate.hql.ast.QuerySyntaxException: Books is not mapped [SELECT COUNT(*) FROM Books]
at org.hibernate.hql.ast.util.SessionFactoryHelper.requireClassPersister(SessionFactoryHelper.java:181)
at org.hibernate.hql.ast.tree.FromElementFactory.addFromElement(FromElementFactory.java:111)
at org.hibernate.hql.ast.tree.FromClause.addFromElement(FromClause.java:93)
...
ここで、私の
DAO.java
メソッドです。
public int getTotalBooks(){
return DataAccessUtils.intResult(hibernateTemplate.find(
"SELECT COUNT(*) FROM Books"));
}
Book.java
:
@Entity
@Table(name="Books")
public class Book {
@Id
@GeneratedValue
@Column(name="id")
private int id;
@Column(name="title", nullable=false)
private String title;
...
}
どのように修正すれば動作するのでしょうか?
どのように解決するのですか?
例外メッセージが表示されます。
Books is not mapped [SELECT COUNT(*) FROM Books]; nested exception is org.hibernate.hql.ast.QuerySyntaxException: Books is not mapped [SELECT COUNT(*) FROM Books]
Books
はマッピングされていません。というマッピングされた型がないことです。
Books
.
そして実際、そうではありません。あなたのマッピングされた型は
Book
. というテーブルにマップされています。
Books
というテーブルにマップされていますが、型は
Book
. HQL(またはJPQL)クエリを書くときは、テーブルではなく型の名前を使用します。
そこで、クエリを次のように変更します。
select count(*) from Book
が必要かもしれませんが
<ブロッククオート
select count(b) from Book b
HQL が
*
という表記になります。
関連
-
Javaでよくある構文エラー
-
javaの非静的メソッドを静的に参照することができない
-
メモ帳でJavaプログラムをコンパイルして実行すると、Could not find or load main class ...というエラーが表示される。解決方法
-
Uncaught ReferenceError: は定義されていません。
-
java マイクロソフト払い戻し予期せぬサーバーからのファイルの終了
-
maven レポート エラー 解決不可能な親POM
-
1分でわかる!恋人の写真をIDEAの背景画像に設定する方法【おすすめ集
-
htmlとwordの相互変換の実装(画像あり)
-
[解決済み] Hibernateの「オブジェクトは保存されていないトランジェントインスタンスを参照しています - フラッシュする前にトランジェントインスタンスを保存してください」エラーの修正方法
-
[解決済み】JPAとHibernate - Criteria vs. JPQL or HQL
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
スレッド "main "での例外 java.util.NoSuchElementException in Java 問題解決済み
-
型に解決できない エラー解決
-
javaの非静的メソッドを静的に参照することができない
-
SocketException java.netの4つの例外解決策。
-
java.sql.SQLException: 結果セットの開始前
-
Java基礎編 - オブジェクト指向
-
春ブート複数のデータソースの管理(atomikos)同じサーバーホスト上の複数のプロジェクトを開始する複数のJava - jarのエラーソリューション
-
Java基礎 - マッピングとQ/A
-
htmlとwordの相互変換の実装(画像あり)
-
[解決済み] Hibernate エラー - QuerySyntaxException: users は [from users] にマップされていません。