![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
こんばんは。
現在、Strutsを使ったシステムをメンテナンスしているのですが、
java.io.Serializableを実装したクラスをアクションフォームBeanに
しています。(全画面共通フォームBean)
私はまだ初心者なので、ActionFormを継承したクラスをアクションフォームBeanとしてしか使ったことがないので、
なぜ、直列化にし、さらに共通で使っているのかが分かりません・・・
聞いたのですが、皆よく分からないとのことでした。
もしかして、直列化にすることは普通なのですか?
また、直列化も調べたのですが、あまり理解できなかったので、
分かりやすく教えて頂けませんでしょうか?
ご存知の方、よろしくお願い致しますm(_ _)m
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_06.png?5a7ff87)
No.1ベストアンサー
- 回答日時:
StrutsではActionFormを継承していなければ、ActionFormとして扱えません。
もしかしたら、純粋なStrutsではなく拡張か何かをされてるのではないでしょうか?
直列化とは、シリアラズのことです。直列化とはあまり言いません。
簡単に説明すると、Javaで扱うオブジェクト(インスタンス)を、Java以外のストレージ(領域)に出力するためのものです。
例えば、Webだとセッション情報をDBに保存したり、平行稼動しているWebアプリケーション同士で情報を共有するときに使いますね。
ちなみに、ActionFormクラスもSerializableです。
参考URL:http://www.nextindex.net/java/IO/serialize.html
この回答への補足
こんにちは。お返事ありがとうございます☆
>もしかしたら、純粋なStrutsではなく拡張か何かをされてるのではないでしょうか?
ActionFormの部分だけ既存の分をもらってテストプログラムを作ってみました。単純なStrutsを使っていますが、うまくいきました。
Actionクラスでも特別なことはしていません。
教えて頂いた例のような操作をしないのであれば、
わざわざシリアライズしないで、ActionFormを継承させて
コーディングした方がいいのでしょうか?
すみませんが、よろしくお願い致しますm(_ _)m
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_06.png?5a7ff87)
No.2
- 回答日時:
状況が全く把握できていないのですが、
既に動いているのであれば、わざわざ作り直す必要はないと思うのですが、なぜActionFormを継承させたいのでしょうか。
Strutsのバージョンはいくつですか?
Action#executeではActionFormが引数となってますが、ActionFormを継承しないでどうやって取得してるのでしょうか?
この回答への補足
こんばんは。ご回答ありがとうございますm(_ _)m
バージョンは、struts-1.2.9です。
今後の参考までに聞いていましたので、
なぜ?という感覚しかなく、質問を整理できていませんでした。
申し訳ありません。
もう一度詳しく調べてみます。
ちなみに、execute()でActionFormを引数にし、
TestFrm aFrm = (TestFrm) frm;
と単純に使って、データを取得・設定しています。
※TestFrmはSerializableを実装したクラスです。
ありがとうございましたm(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルのデータ整形について 3 2022/11/12 00:27
- Access(アクセス) AccessVBAで降順にするテーブル作成クエリを使用して作成したテーブルを削除し同一のテーブル作成 1 2023/01/06 11:17
- JavaScript ラジオボタンによるフォームの開閉を行いたい 3 2022/03/31 21:30
- Visual Basic(VBA) Vba LongPtrについて教えてください 2 2022/08/19 11:14
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
- 工学 コンデンサメインの降圧回路 6 2022/09/02 17:20
- JavaScript [Java] Edgeでのアドレスバー非表示について 3 2022/04/20 17:51
- X(旧Twitter) Twitterの異議申し立てについて 2 2022/07/08 17:46
- Excel(エクセル) Excel VBAについてです。 少しだけ知識はあるのですが、 うまくいかなかったので 質問させてい 3 2022/09/13 18:40
- 数学 一般的な行列の逆行列に関する質問 3 2022/04/21 14:53
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
interface,extend,implementの...
-
private継承はどう使う?
-
Ftpでの帯域制限の設定方法につ...
-
【C#】クラスのコンストラクタ...
-
オーバーライドとラッパーの違い
-
Javaでmainからインスタンス化...
-
委譲って何ですか?
-
WPF C# PointToClient
-
Excel vbaのプログラムでガンマ...
-
【設計思想の質問】staticメソ...
-
定数の使用について
-
サニタイジングについて
-
「継承されたメソッドの可視性...
-
C#からDLLを呼びたいのですが・...
-
クラス間の値渡しの仕方
-
抽象クラスをJUNITでテストする...
-
C# 「データが失なわれる可能性...
-
Vector、ArrayList、LinkedList...
-
javaの勉強
-
なぜインタフェースを使うのか?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
interface,extend,implementの...
-
「ラッパークラス」の存在意義...
-
(vba)他のアプリケーションの右...
-
抽象クラスをJUNITでテストする...
-
オーバーライドとラッパーの違い
-
C# 「データが失なわれる可能性...
-
【C#】クラスのコンストラクタ...
-
JTextFieldの入力制限
-
c++でのヘッダーファイルの循環...
-
vb.net 自作プロパティの削除に...
-
「継承されたメソッドの可視性...
-
ASP.NETでの共通コードの書き方...
-
Javaのインスタンス化の構文の...
-
Javaで下線
-
メソッドの引数にクラス名を渡す
-
VB DLLプロジェクトについて
-
C#からDLLを呼びたいのですが・...
-
インターフェース型の使い方が...
-
委譲って何ですか?
-
C# 継承の問題で programに示さ...
おすすめ情報