skillup

技術ブログ

Java

メソッドのtransient

投稿日:

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

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

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

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

SampleBean.java

LogUtil.java

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

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

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

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

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

-Java
-

執筆者:


comment

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

関連記事

no image

便利すぎる道具の弊害

現在、Javaのプロジェクトでは会社でNetbeansを使っていますが、IDEを使っているばっかりに理解できていないところがありました。便利すぎる道具の弊害ですね・・・ IDEについて一応説明をしてお …

no image

ページャープラグイン dataTable

レコードを一覧表示する上で意外と面倒くさいのがページャーでしょう。 自力で作成してもよいのですが、なかなかこれが面倒だったりします。 また近年ではリンクを踏ませずに、スクロールするだけで表示ができる形 …

no image

jenkinsのオートデプロイ

久々にJavaやりました。 Contents1 やりたいこと2 ハマりポイント2.1 Antでのjobの設定2.2 jenkinsでビルドできない2.3 jenkinsのオートデプロイ2.4 SSHで …

no image

Javaのオブジェクト指向に関して

Contents1 staticメソッド2 アクセス修飾子3 抽象クラス3.1 オーバーライド(親クラスのメソッドを上書きすること)3.2 オーバーロード(同名メソッドを複数もつこと)4 interf …

no image

JSFとManagedBeanがバインドされない

JSFとmanagedBeanはEL式.プロパティでバインドできますが、専用のタグを使わないとバインドされません。 managedBeanでtestというフィールドがあった場合、 JSF側で [cra …