Comme une mise à jour, étant donné qu'il existe plusieurs façons de tenter de sous-classer ou d'incorporer les données dans une autre classe , dont beaucoup ne fonctionnent pas très bien (sur GWT), voici deux schémas qui fonctionnent. Dans la première, les principales caractéristiques sont que la clé primaire est dans la classe de base, et la stratégie d'héritage est SUBCLASS_TABLE. Notez que cela signifie que BaseData ne peut pas être persisté. Un second mécanisme est illustré ci-dessous. Dans ce document la classe de base est une classe régulière qui peut être persisté et la classe dérivée a une stratégie d'héritage de customStrategy = "complète table"
1)
@PersistenceCapable
@Inheritance(strategy = InheritanceStrategy.SUBCLASS_TABLE)
public class BaseData
{
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
public Long id;
// scan data
@Persistent
public String Data1 = "";
// etc...
}
@PersistenceCapable
public class ProcessedData extends BaseData
{
// No key
// Thats it
}
@PersistenceCapable
public class RawData extends BaseData
{
// No key
// Thats it
}
2)
@PersistenceCapable
@Inheritance(customStrategy = "complete-table")
public class ProcessedData extends RawData
{
// thats it
}
@PersistenceCapable
public class RawData
{
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
public Long id;
@Persistent
public String Data1 = "";
// ...
}
Merci beaucoup, je me demandais si ce serait le cas. Avec le sous-classement, je peux voir quelques mécanismes, par exemple class processedData étend RawData comme un mécanisme ou une classe processedData étend BaseData et la classe RawData étend BaseData comme un autre. Des réflexions sur les mérites de l'une ou l'autre approche? – aronp
Étant donné qu'il existe un certain nombre de façons de faire cela qui ne fonctionnent pas très bien, suivre est un moyen que je dois travailler. – aronp