Google conjunto problema almacén de datos
-
16-09-2019 - |
Pregunta
Tengo una entidad de golf que contiene un juego de llaves a mi entidad Tag. ¿Cómo hago para crear una consulta para obtener una lista de cursos con una etiqueta específica? Por ejemplo, quiero encontrar todos los cursos etiquetados con java.
Aquí están mis entidades:
@PersistenceCapable(identityType = IdentityType.APPLICATION, detachable="true")
public class Course{
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Key key;
@Persistent private Set<Key> tags;
//etc
}
@PersistenceCapable(identityType = IdentityType.APPLICATION, detachable="true")
public class Tag{
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Key key;
@Persistent private String tagText;
}
Solución
Tag tag = getTagFromString("java");
Key tagKey = tag.getKey(); // i will assume you have a getKey() method
PersistenceManger pm = PMF.get().getPersistenceManager();
Query q = pm.newQuery(Course.class);
q.setFilter("tags == :tagParam");
List<Course> coursesTaggedWithJava = (List<Course>) q.execute(tagKey);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow