2012-02-22 20 views
0

名前、メールアドレス、電話番号、VehicleのArrayListを持つAccountクラスがあります。Vehiclesは、Strings make、model、およびint yearを持つ別のクラスです。アカウントをデータベースに保存したい名前、電子メールアドレス、電話番号は問題なく保存できますが、VehicleのArrayListをどのように格納するかは不明です。オンラインで見た2つの選択肢は、JSONObject/Arrayとシリアライゼーションです。しかし、データベースから戻すときにJSONObjectを自分のVehicleオブジェクトに変換することに失敗しました。そして、シリアライゼーション私は完全に理解していないし、多くのオンラインを見つけることができませんでした。すべてのチュートリアルでは、オブジェクトをデータベースではなくファイルにシリアライズしたようです。データをデータベースに保存する方法についての助けがあれば、それは役に立ちますか、それとももっと良い方法ですか?私のカスタムオブジェクトをSQLデータベースに保存する方法

ありがとうございました。

+0

http://en.wikibooks.org/wiki/Java_Persistence/What_is_Java_persistence%3F – hovanessyan

+0

http://www.javaworld.com/javaworld/jw-01-2008/jw-01-jpa1.html – hovanessyan

答えて

1

車両が1つのアカウントにしか関連付けられていない場合は、Vehiclesテーブルに外部キーとしてAccountを追加します(車両テーブルがない場合は作成する必要があります)。

車両が複数の勘定科目に関連付けられている場合は、勘定科目と車両の関係を追跡する仲介テーブルを作成するので、account_id、vehicle_idの2つのフィールドだけがあります。 (もう一度Vehiclesテーブルが必要です)

ArrayListをシリアル化してAccountsテーブルのフィールドに格納することができますが、それは私にとってはきれいな解決策ではないようです。

+0

私は思います外部キーは正常に機能します(車両は単一のアカウントにしか関連付けられないため)。ありがとう – user1154920

+0

はいテーブルの関係、つまり1/1 2/2 2/1などで読み上げる必要はありません。それを整理して、各車と各アカウントの内容をデータベースに格納し、外部/プライマリを使用して2つをリンクしますキー – jonney

関連する問題