当前位置: 首页 > 知识库问答 >
问题:

使用嵌入式字段时Spring@Query jpql转换为本机sql无效

毕宇
2023-03-14

给定以下类层次结构,我试图查询拥有对Charakter对象的依赖关系的CharacterDisposition。

@Entity
@Table(name = "CHARACTER_DISPOSITION")
class CharacterDisposition{
    @OneToMany
    List<CharacterSlot> slots;
}

@Entity
@Table(name = "CHARACTER_SLOT")
class CharacterSlot{
    @Embedded
    SceneCharacter sceneCharacter;
}

@Embeddable
class SceneCharacter{
    @ManyToOne
    Charakter character;
}

我在spring存储库接口中使用以下jpql查询,

@Query("SELECT cd "
        + "FROM CharacterDisposition cd "
        + "JOIN CharacterSlot cs "
        + "WHERE cs.sceneCharacter.character = :character")
List<CharacterDisposition> findCharacterDispositionWithCharacterDependency(Charakter character);
select 
  characterd0_.id as id1_24_, characterd0_1_.scene_id as scene_id2_24_ 
from character_disposition characterd0_ 
    inner join character_slot characterd0_1_ on characterd0_.id=characterd0_1_.id 
    inner join character_slot characters1_ on where characters1_.character_id=?

共有1个答案

卫彭亮
2023-03-14

尝试以下方法-

@Query("SELECT cd "
        + "FROM CharacterDisposition cd "
        + "JOIN cd.slots cs "
        + "WHERE cs.character = :character")
 类似资料:
  • 如何重写子域到路径? 示例: foo.barexample.com 最好是(反向文件夹): foo.barexample.com 请求foo。酒吧实例com应该在/src/main/resources/static/bar/foo/index中提供一个文件。html。 对于Apache2,它是由mod_rewrite完成的。我发现留档重写与Tomcat 8但问题是在哪里把这个文件使用Spring启

  • 问题内容: JPA实体类是否可以包含两个嵌入式()字段?一个例子是: 在这种情况下,a 可以包含两个实例-家庭和工作。我在Hibernate的实现中使用JPA。当我使用Hibernate Tools生成架构时,它仅嵌入一个。我想要的是两个嵌入式实例,每个实例的列名都经过区分或在前面加上一些前缀(例如home和work)。我知道,但是这要求每个属性都应单独覆盖。如果嵌入的对象()变大,那么这会变得很

  • 问题内容: 这是一个例子; 我有数字列表(1、5、8、36),我希望将这些值用作(临时)表行。方法之一如下 问题是号码表是动态的。它可以没有任何值。因此,我需要一种适当的系统方法将这些值转换为临时表行。 问题答案: 我大量使用的解决方案… 以逗号分隔的字符串形式提供数字列表,然后使用人们在线编写的众多功能之一。 在线的 许多 示例之一… SQL用户定义函数来解析一个带分隔符的Str 这些函数将字符

  • 您好,我们正在尝试返回包含技能列表的工作列表。这是我们的代码: 然而,当我们使用Postman进行测试并发送POST请求时,我们会得到以下错误: 组织。冬眠QueryException:JPA风格的位置参数不是整数序号; 我们将Spring Boot与PostgreSQL一起使用。我们假设问题出在这里我们如何修复此问题以使用查询的ID从作业表中返回所有技能的列表? 这是我们的工作模型和JPA映射

  • 我想知道如何通过docx4j将显示的doc属性转换为“简单文本”。我的文档架构如下: 主要问题是,当我将文档转换为PDF时,我丢失了上述信息。代码如下: 在转换的pdf中,我有以下结构: 提前感谢! 编辑: FieldUpdater的使用 捕获以下异常: 这里:

  • 我有一个,它嵌入一个指向另一个的嵌入指针。当我使用默认的行为时,它可以完美地工作。但是,当我为嵌入式的类型而不是为外部实现时,就会出现空指针取消引用的恐慌。 如果我也为外部类型实现,那么它就可以工作了。但是,外部结构有许多字段,我不想手动解封。 为什么在其中一个而不是另一个上实现会导致恐慌? 有没有一种方法可以让它工作而不为外部类型实现? 如果没有,是否有更简单/更少手动的方法来为外部类型实现?