ホームページ データベース mysql チュートリアル Hibernate错误解决(TransactionException:Transactionnotsuccess

Hibernate错误解决(TransactionException:Transactionnotsuccess

Jun 07, 2016 pm 03:56 PM
hibernate 解決する 間違い

【关键的错误信息】: TransactionException: Transaction not successfully started 和一个 doCommit 从该关键字看,是使用Hibernate事务管理器(而不是Spring,下面详细log的绿色字体)处理事务的commit时抛出的, 【具体解决】: //下面的代码段会报错 Se

【关键的错误信息】: TransactionException: Transaction not successfully started 和一个doCommit

从该关键字看,是使用Hibernate事务管理器(而不是Spring,下面详细log的绿色字体)处理事务的commit时抛出的,

【具体解决】:

//下面的代码段会报错

        Session session =  getSessionFactory().getCurrentSession();  
        session.beginTransaction();          //
        String queryString = "update.... "; //具体数据库字段内容的更新
        Query query = session.createQuery(queryString);         
        query.executeUpdate();  
        session.getTransaction().commit(); //应该是这里导致了 org.hibernate.TransactionException: Transaction not successfully started
ログイン後にコピー
//改为下面的代码段好了
	Session session =  getSessionFactory().openSession();  
        Transaction tran = session.beginTransaction();   //这么修改后,ok
        String queryString = "update ....";
        Query query = session.createQuery(queryString);  
        query.executeUpdate();  
        tran.commit(); 
        session.close();
ログイン後にコピー

【事后诸葛亮】该错误在dao层的一个执行update的语句里面,但该处没有提示错误,而是在调用这个函数的上一级函数要return时抛出的。

1. 可能是session结束时的检查。

2. 没有申请transaction对象,直接使用函数导致了错误?

3. 而且虽然最后报错,但事实上已经成功的修改了数据库(持久化已经完成)。

4. 生搬硬套固然能快速实现,理解透彻才是正道。

5. 这么改可能会影响执行时间,多数据量时可能需要优化。

附:详细的stacktrace:

org.springframework.transaction.TransactionSystemException: Could not commit Hibernate transaction; nested exception is org.hibernate.TransactionException: Transaction not successfully started
at org.springframework.orm.hibernate3.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:660)

Caused by: org.hibernate.TransactionException: Transaction not successfully started
at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:130)
at org.springframework.orm.hibernate3.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:656)
... 77 more

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Win11システムに中国語言語パックをインストールできない問題の解決策 Win11システムに中国語言語パックをインストールできない問題の解決策 Mar 09, 2024 am 09:48 AM

Win11 システムに中国語言語パックをインストールできない問題の解決策 Windows 11 システムの発売に伴い、多くのユーザーは新しい機能やインターフェイスを体験するためにオペレーティング システムをアップグレードし始めました。ただし、一部のユーザーは、アップグレード後に中国語の言語パックをインストールできず、エクスペリエンスに問題が発生したことに気づきました。この記事では、Win11 システムに中国語言語パックをインストールできない理由について説明し、ユーザーがこの問題を解決するのに役立ついくつかの解決策を提供します。原因分析 まず、Win11 システムの機能不全を分析しましょう。

操作を完了できません (エラー 0x0000771) プリンター エラー 操作を完了できません (エラー 0x0000771) プリンター エラー Mar 16, 2024 pm 03:50 PM

プリンターの使用中に、操作を完了できませんでした (エラー 0x00000771) などのエラー メッセージが表示された場合は、プリンターが切断されている可能性があります。この場合、以下の方法で問題を解決できます。この記事では、Windows 11/10 PC でこの問題を解決する方法について説明します。エラー メッセージ全体には、「操作を完了できませんでした (エラー 0x0000771)」が示されています。指定されたプリンターは削除されました。 Windows PC で 0x00000771 プリンター エラーを修正する プリンター エラーを修正するには、操作を完了できませんでした (エラー 0x0000771)。指定されたプリンターは Windows 11/10 PC で削除されています。次の解決策に従ってください: 印刷スプールを再起動します

Black Shark携帯電話の電源が入らない問題を解決する方法を教える5つのヒント! Black Shark携帯電話の電源が入らない問題を解決する方法を教える5つのヒント! Mar 24, 2024 pm 12:27 PM

スマートフォン技術が発展し続けるにつれて、携帯電話は私たちの日常生活においてますます重要な役割を果たしています。 Black Shark フォンは、ゲーム パフォーマンスに重点を置いたフラッグシップ フォンとして、プレイヤーから高い支持を得ています。ただし、場合によっては、Black Shark 携帯電話の電源が入らないという状況にも直面するため、この問題を解決するために何らかの措置を講じる必要があります。次に、Black Shark 携帯電話の電源が入らない問題を解決する方法を説明する 5 つのヒントを共有しましょう: ステップ 1: バッテリー残量を確認する まず、Black Shark 携帯電話に十分な電力があることを確認します。携帯電話のバッテリーが消耗している可能性があります

Windows Update プロンプト エラー 0x8024401c エラーの解決策 Windows Update プロンプト エラー 0x8024401c エラーの解決策 Jun 08, 2024 pm 12:18 PM

目次 解決策 1 解決策 21. Windows Update の一時ファイルを削除します。 2. 破損したシステム ファイルを修復します。 3. レジストリ エントリを表示および変更します。 4. ネットワーク カード IPv6 をオフにします。 5. WindowsUpdateTroubleshooter ツールを実行して修復します。 6. ファイアウォールをオフにします。およびその他の関連するウイルス対策ソフトウェア。 7. WidowsUpdate サービスを閉じます。解決策 3 解決策 4 Huawei コンピュータの Windows アップデート中に「0x8024401c」エラーが発生する 症状 問題 原因 解決策 まだ解決されませんか?最近、システムの脆弱性のため、Web サーバーを更新する必要があります。サーバーにログインすると、エラー コード 0x8024401c が表示されます。

このデバイスにドライバーをロードできません。解決するにはどうすればよいですか? (個人的にテスト済みで有効です) このデバイスにドライバーをロードできません。解決するにはどうすればよいですか? (個人的にテスト済みで有効です) Mar 14, 2024 pm 09:00 PM

コンピューターがドライバーを読み込めない場合、デバイスが正しく動作しないか、コンピューターと正しく対話できない可能性があることは誰もが知っています。では、このデバイスにドライバーをロードできないことを示すプロンプト ボックスがコンピューターに表示された場合、問題を解決するにはどうすればよいでしょうか?以下のエディタでは、問題を簡単に解決する 2 つの方法を説明します。このデバイスにドライバーをロードできません 解決策 1. スタート メニューで「カーネル分離」を検索します。 2. メモリの整合性をオフにします。上記のメッセージには、「メモリの整合性がオフになっています。デバイスは脆弱である可能性があります。」というメッセージが表示されます。戻るボタンをクリックして無視してください。使用には影響しません。 3. マシンを再起動すると、問題が解決することがあります。

小紅書で公開するときに写真が自動的に保存される問題を解決するにはどうすればよいですか?投稿時に自動保存された画像はどこにありますか? 小紅書で公開するときに写真が自動的に保存される問題を解決するにはどうすればよいですか?投稿時に自動保存された画像はどこにありますか? Mar 22, 2024 am 08:06 AM

ソーシャルメディアの継続的な発展に伴い、Xiaohongshu はますます多くの若者が自分たちの生活を共有し、美しいものを発見するためのプラットフォームとなっています。多くのユーザーは、画像を投稿する際の自動保存の問題に悩まされています。では、この問題をどうやって解決すればよいでしょうか? 1.小紅書で公開するときに写真が自動的に保存される問題を解決するにはどうすればよいですか? 1. キャッシュをクリアする まず、Xiaohongshu のキャッシュ データをクリアしてみます。手順は次のとおりです: (1) 小紅書を開いて右下隅の「マイ」ボタンをクリックします。 (2) 個人センター ページで「設定」を見つけてクリックします。 (3) 下にスクロールして「」を見つけます。 「キャッシュをクリア」オプションを選択し、「OK」をクリックします。キャッシュをクリアした後、Xiaohongshu を再起動し、写真を投稿して、自動保存の問題が解決されるかどうかを確認します。 2. 小紅書バージョンを更新して、小紅書が正しく動作することを確認します。

Linux のおっと: このエラーの意味の詳細な説明 Linux のおっと: このエラーの意味の詳細な説明 Mar 21, 2024 am 09:06 AM

LinuxOops: このエラーの意味の詳細な説明、特定のコード例が必要 LinuxOops とは何ですか? Linux システムでは、「おっと」とは、カーネル内の重大なエラーによりシステムがクラッシュする状況を指します。 Oops は実際には、致命的なエラーが発生したときにシステムを停止し、開発者が問題を診断して修正できるように関連するエラー情報を出力するカーネル クラッシュ メカニズムです。通常、エラーはカーネル空間で発生し、ユーザー空間のアプリケーションとは何の関係もありません。カーネルが遭遇したとき

Oracle エラー 3114 の解釈: 原因と解決策 Oracle エラー 3114 の解釈: 原因と解決策 Mar 08, 2024 pm 03:42 PM

タイトル: Oracle エラー 3114 の分析: 原因と解決策 Oracle データベースを使用すると、さまざまなエラー コードが頻繁に発生しますが、その中で比較的一般的なのはエラー 3114 です。このエラーには通常、データベース リンクの問題が関係しており、データベースへのアクセス時に例外が発生する可能性があります。この記事では、Oracle エラー 3114 を解釈し、その原因について説明し、エラーを解決するための具体的な方法と関連するコード例を示します。 1. エラー 3114 の定義 Oracle エラー 3114 パス

See all articles