Les Annotations JPA - Comment récupérer une valeur unique à partir d'une autre table que l'objet courant?
Comment faites-vous la carte d'une seule valeur dans une colonne d'une autre table à l'objet en cours?
Exemple:
class Foo {
@Id
@Column(name="FOO_ID")
private String fooId;
@Column(name="FOO_A")
private String fooA;
//Column to map to another table?
//is a one to one mapping - but don't want a separate object for this.
private String barCode;
}
Table: Fields
Foo: FOO_ID, FOO_A
Bar: FOO_ID, BAR_CODE
Comment puis-je récupérer le BAR_CODE
champ sans la création d'un objet séparé (ou une table secondaire) à l'aide de JPA annotations
?
Notez que c'est pour la recherche uniquement.
Pourquoi ne pas vous voulez un objet distinct?
Ses un assez grand service web, et je suis en train de réduire la création de l'objet et des données supplémentaires à venir en arrière quand je n'ai besoin que d'un seul champ.
Pourquoi ne pas vous voulez un objet distinct?
Ses un assez grand service web, et je suis en train de réduire la création de l'objet et des données supplémentaires à venir en arrière quand je n'ai besoin que d'un seul champ.
OriginalL'auteur Marcus | 2013-03-19
Vous devez vous connecter pour publier un commentaire.
Utiliser un table secondaire. Cela permet à la carte pour une entité, sur un un-à-un, un autre tableau et de définir les mappages de colonnes qui l'utilisent.
Exemple:
Si vous avez plusieurs tableaux secondaires ensuite utiliser ...
@SecondaryTables
ne devrait-elle pas être
@Column(table="other_table", name="barCode")
? Êtes-vous l'exploitation de ceci implicitement, est-ce une faute de frappe, ou est-il un autre nom de la conversion d'ailleurs ?Que faire si j'ai une relation ManyToOne entre Toto et un Bar et veut toujours accès à la propriété de la classe Foo mais cette valeur est en fait d'un Bar, mais j'ai spécifié avec une Barre de clé étrangère de l'association (ManyToOne) Foo ?
OriginalL'auteur Perception