objectbox / objectbox/objectbox-java

Embedded Objects

Ouverte
#456 2 commentaires 14 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

enhancement
Langage dominant
Java
Étoiles
4.6k
Forks
311
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

Hi,

I would like to store ValueObjects inside @Entity object, is it somehow supported?
What that basically mean is you can convert one class field into multiple database fields.
Solution 1)
Flatten the hierarchy

@Entity
public class Bill {
    private String priceCurrency;
    private Double priceAmount;
}

Solution 2)
Make relation

@Entity
public class Bill {
    private ToOne<Money> price;
}
@Entity
public class Money {
    @Id Long id;
    private String currency;
    private Double amount;
}

Solution 3)
Convert to one database field

@Entity
public class Bill {
    @Convert(converter = MoneyConverter.class,dbType = String.class)
    private Money money;
}

Neither of those solutions fit all my requirements which are

  1. Do not map manually between multiple class fields and ValueObject
  2. Do not use relation for performance/convenience reason
  3. Sum and compare ValueObjects fields such as Double amount

Somebody have solution to this?

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

L’issue ne nomme aucun fichier source, test ou point d’entrée. Commencez par localiser le code de mappage des entités et de conversion des valeurs, puis déterminez si des objets valeur intégrés peuvent satisfaire aux exigences indiquées sans mappage manuel des champs, relations ni conversion d’un champ unique ; la tâche est considérée comme terminée lorsqu’une approche prise en charge, documentée et testée existe.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
java
Domaine
database
Type d'issue
Fonctionnalité
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.