使用泛型类型编写 HQL UPDATE 查询

我有一个通用的 tokenRepository 接口:


public interface TokenRepository<T_Token extends Token, T_id> {


   @Modifying

   @Query("UPDATE T_token as a SET a.revocationReason = :reason WHERE a.id = :id")

   void revokeByTokenId (@Param("id") T_id id, @Param("reason") RevocationReason revocationReason);


}

和一个专门的存储库界面:


public interface CustomerTokenRepository extends Repository<CustomerToken, Long>, TokenRepository<CustomerToken, Long> {}

当我启动 Spring Boot 应用程序时,休眠返回以下错误:


org.hibernate.hql.internal.ast.QuerySyntaxException: T_token is not mapped [UPDATE T_token as a SET a.revocationReason = :reason WHERE a.id = :id]

所以我的问题是:是否有可能以及如何在 HQL 中使用 java 泛型类型?


慕雪6442864
浏览 166回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java