skillup

技術ブログ

Java

メソッドのtransient

投稿日:

エンティティを作成するときに、データベースのカラムにない値をプロパティを持たせるためにはtransientという修飾子が必要です。

参考リンク フィールド以外のプロパティをエンティティに持たせる

通常のCDIでもserializeをする場合、内部のメソッドにSerializeインターフェイスが実装されていないとエラーが発生します。

例として下記のようなマネッジドビーンがあり、ロガーのクラスをインジェクトしているとします。

SampleBean.java

LogUtil.java

上記のケースではLogUtilがシリアライズができないためエラーが発生します。

この場合、シリアライズから除外するという意味で、transient修飾子を付けます。

↑のようにかけばOKです。

わかりやすいJavaEEウェブシステム入門

のP334にこのことについて書いてあります。

-Java
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

JSONへの変換

近年はJavaSciprtを利用した動的なサイトが多いため、データのやり取りをAjaxで行うことも多かったりします。 JavaScriptの場合、データをJSON形式で扱うため、サーバー側からレスポン …

no image

JavaSEでのCDI

以前、JavaSEでもCDIを使ってみたい!と思ったのですが、以前は探し方が悪かったのか情報を見つけ出すことができませんでした。 が、昨日ちょっと検索したらちょっと情報があり、無事実装できたのでメモし …

no image

設定ファイルの置き場所

一般的にレベルの高いソースとは保守性が高いものを指します。特にWEB系ですと仕様変更がしょっちゅうなので変更があったときにいかに少ない工数で対応できるかが大切です。 保守性をあげる工夫はいろいろありま …

no image

Javaでの文字コード判定、変換

Javaにて文字コード判定の処理を書きます。 Contents1 通常の文字コードの判定、変換2 ファイルの文字コード判定、変換2.1 juniversalchardet2.1.1 ダウンロード2.1 …

no image

ガベージコレクタに関して

本日はガベージコレクタに関して。 Contents1 ガベージコレクタとは?1.1 1 nullを代入1.2 2 参照変数を他のオブジェクトに割り当てる1.3 finalize()メソッドの定義 ガベ …

アーカイブ