[解決済み] Javaにusing文はあるのか?
2022-03-12 13:28:57
質問
Javaには、hibernateでセッションを開くときに使用できるusing文がありますか?
C#では、次のようなものです。
using (var session = new Session())
{
}
そのため、オブジェクトはスコープ外に出て、自動的に閉じます。
解決方法は?
Java 7を導入
リソースブロックの自動管理
この機能は、Javaプラットフォームに導入されました。以前のバージョンのJavaには、この機能らしきものはありませんでした。
using
.
を実装した任意の変数を、例として使用することができます。
java.lang.AutoCloseable
を次のように記述します。
try(ClassImplementingAutoCloseable obj = new ClassImplementingAutoCloseable())
{
...
}
Java の
java.io.Closeable
インターフェースは、ストリームによって実装され、自動的に
AutoCloseable
というように、すでにストリームを
try
ブロックの中で使用するのと同じように、C#の
using
ブロックを作成します。これは、C#の
using
.
現在
バージョン 5.0 では、Hibernate セッションに
AutoCloseable
で、ARMブロックの中で自動クローズすることができます。以前のバージョンの Hibernate では
セッションは
AutoCloseable
. そのため、この機能を使用するには、Hibernate >= 5.0である必要があります。
関連
-
[解決済み] Java enumのメンバーを比較する:==またはequals()?
-
テストが見つかりませんでした
-
[解決済み] JavaでInputStreamを読み込んでStringに変換するにはどうすればよいですか?
-
[解決済み] JavaでNullPointerExceptionを回避する方法
-
[解決済み] Javaでネストされたループから抜け出すには?
-
[解決済み] なぜJavaにはtransientフィールドがあるのですか?
-
[解決済み] 特定のUnicode文字を含むコメントでのJavaコードの実行が許可されているのはなぜですか?
-
[解決済み] Javaで汎用配列を作成する方法は?
-
[解決済み】Javaではfinallyブロックは必ず実行されるのですか?
-
[解決済み】JSP 2を使用して、JSPファイル内のJavaコードを回避するにはどうすればよいですか?
最新
-
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 "での例外をEclipseで解決 java.lang.Error: 未解決のコンパイル問題、コンパイラとパッケージの不整合
-
この行に複数のマーカーがある - HttpServletResponseが型エラーに解決できない
-
javaで非静的な解を静的な参照にすることができない
-
this()の呼び出しはコンストラクタ本体の最初の文でなければならない 例外解決と原因分析
-
JavaMailのメール送信が失敗するケースとその説明の分析
-
Eclipseプロンプトを実行する java仮想マシンを使用しない
-
リソースの読み込みに失敗しました。サーバーはステータス500(内部サーバーエラー)で応答しました。
-
あるコードに出会いましたが、何に使うのか理解できません。 List<String> list = new ArrayList<String>() { { a
-
IDEA パッケージステートメントの欠落
-
Google Chromeのエラー「Not allowed to load local resource」の解決策について