skillup

技術ブログ

Java

メソッドのtransient

投稿日:

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

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

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

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

SampleBean.java

LogUtil.java

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

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

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

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

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

-Java
-

執筆者:


comment

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

関連記事

no image

GlassFishでDB接続

JavaEEではアプリケーションサーバーとしてGlassFishを使いますが、先日、GlassFishを通さないとJavaEEでDBが動かせないということを知りました。そのためJavaEEではデータベ …

no image

Optionalについて その2

JavaEEブログなはずなのに11月はcakeのことばかり書いていて、Javaのことすら書いていないですね(汗) 今日はOptionalについて書きます。 いまいち使い方がわからなかったんですが、自分 …

no image

日付けのメソッド その2

以前、時刻を扱うエントリーではCalendarクラスとDateクラスを使いましたが、Java8で標準になったTimeAPIについて調べてみます。 Contents1 現在時刻の出力2 任意時間の出力3 …

no image

CSVの入出力に関して

業務でCSVの入出力と格闘中。 まあよくある頻出の作業だったりするんですが、自前でやるとなかなか面倒です。 面倒なポイントとしては クオートのエスケープ カンマのエスケープ ヘッダーとの結合 ですかね …

no image

pretty-configでのファイルアップロード

先日、こちらのエントリーでpretty-configを使うとファイルのアップロードができない、というエラーが起こっていたのですが、本日社長により解決していただきました。 原因としてはURLがスラッシュ …

アーカイブ