1

私はクラスを持っています:

@Table(name = "Control")
public class Control extends Model{

   @Column
   private String name;

   [...]

   @Column
   private Map<String, Object> properties;

}

このクラスには他にもフィールドがありますが、私の問題を示すのに十分なものだけをここに書きました。

挿入に関する例外がありました:

09-14 22:11:34.542: E/SQLiteLog(11482): (1) table Control has no column named properties

オブジェクトは String[] または String のいずれかです。

@Column を HashMap データに配置しないと、保存されていない問題だけがすべて「正常に」機能します。

だから私の質問は、このハッシュマップの保存をどのように解決すべきかということです。

私のデータは API から取得され、常に同じプロパティを持っているわけではありません:

controls: [
    {
        bundle: "CloseButton",    
        frame: "0,0,25,25"
    },
    {
        referenceKey: "AccelerationGyro",
        name: "Acceleration Sensor",
        bundle: "Gyro",
        properties: {
            axis: "Z"
            observedKey: "brakeState",
            requiedValue: "1"
        },
        channels: {
            CH: "Acceleration"
        }
    },
    {
        referenceKey: "SteeringGyro",
        name: "Steering Sensor",
        bundle: "Gyro",
        properties: {
            axis: "Y"
            allowedOnI: [
                "@Lights",
                "@Rack",
                "@ReversingLamp"
            ],
    },
        channels: {
            CH: "Steering"
    }
},

ActiveAndroid lib を使用して、このクラスを格納したいと考えています。残念ながら、これに対する解決策はウェブ上で見つけることができませんでした。

私の質問が明確かどうかわかりません。必要に応じて追加のものを提供できます。HashMapも保存したいだけです。:P TypeSerializers に何らかの形で接続されている可能性がありますか?

事前にご回答いただきありがとうございます。

4

1 に答える 1