Verwenden von Spring Data Relational (Federdaten JDBC v3.3.6), ich habe ein Entitätsaufbau ähnlich wie folgt: < /p>
Code: Select all
@Table("entity_a")
public record EntityA(
@Id
Long id,
@Column("entity_a_id")
EntityB other) {
}
@Table("entity_b")
public record EntityB(
Long entityAId,
String value) {
}
Erstellung und Aktualisierung funktionieren wie ein Zauber, aber ich habe einige Einschränkungen mit JDBCAGGREGREGATETEMPLET konfrontiert. Ich möchte alle Entitäten erhalten, wobei EntityB einen bestimmten Wert . Br />
Code: Select all
jdbcAggregateTemplate.findAll(query, EntityA.class);
Keine Variation eines definierten Kriterien führt zur erwarteten SQL -Abfrageerzeugung. Der Generator ersetzt immer den Tabellennamen (oder Alias) der zusammengeschlossenen Entität durch die übergeordnete Entität. /> SELECT ...
FROM "entity_a"
LEFT OUTER JOIN "entity_b" "other" ON "other"."entity_a_id" = "entity_a"."id"
WHERE ("entity_a"."value" = ?)
< /code>
Ich habe die folgenden Variationen ausprobiert.query = query(Criteria.where("other_value").is("something"));
< /code>
und < /p>
query = query(Criteria.where("other.value").is("something"));
< /code>
Beide haben das gleiche Ergebnis verursacht. -SQL PrettyPrint-Override ">SELECT ...
FROM "entity_a"
LEFT OUTER JOIN "entity_b" "other" ON "other"."entity_a_id" = "entity_a"."id"
WHERE ("other"."value" = ?)
< /code>
mache ich etwas falsch oder ist es gerade nicht möglich, die Kriterien -API zu verwenden? Wechsel zu Spring Data JPA ist für mich derzeit keine Option.
Verwenden von Spring Data Relational (Federdaten JDBC v3.3.6), ich habe ein Entitätsaufbau ähnlich wie folgt: < /p>
[code]@Table("entity_a")
public record EntityA(
@Id
Long id,
@Column("entity_a_id")
EntityB other) {
}
@Table("entity_b")
public record EntityB(
Long entityAId,
String value) {
}
[/code]
Erstellung und Aktualisierung funktionieren wie ein Zauber, aber ich habe einige Einschränkungen mit JDBCAGGREGREGATETEMPLET konfrontiert. Ich möchte alle Entitäten erhalten, wobei EntityB einen bestimmten Wert . Br /> [code]jdbcAggregateTemplate.findAll(query, EntityA.class);
[/code]
Keine Variation eines definierten Kriterien führt zur erwarteten SQL -Abfrageerzeugung. Der Generator ersetzt immer den Tabellennamen (oder Alias) der zusammengeschlossenen Entität durch die übergeordnete Entität. /> SELECT ...
FROM "entity_a"
LEFT OUTER JOIN "entity_b" "other" ON "other"."entity_a_id" = "entity_a"."id"
WHERE ("entity_a"."value" = ?)
< /code>
Ich habe die folgenden Variationen ausprobiert.query = query(Criteria.where("other_value").is("something"));
< /code>
und < /p>
query = query(Criteria.where("other.value").is("something"));
< /code>
Beide haben das gleiche Ergebnis verursacht. -SQL PrettyPrint-Override ">SELECT ...
FROM "entity_a"
LEFT OUTER JOIN "entity_b" "other" ON "other"."entity_a_id" = "entity_a"."id"
WHERE ("other"."value" = ?)
< /code>
mache ich etwas falsch oder ist es gerade nicht möglich, die Kriterien -API zu verwenden? Wechsel zu Spring Data JPA ist für mich derzeit keine Option.