亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

JPA,如何選擇數組包含值的位置?

JPA,如何選擇數組包含值的位置?

郎朗坤 2022-11-02 17:28:15
我有一個類似 MyObject 的 Object(我使用 hibernate-array-contributor 依賴項來管理數組):@Entity@Table(name = "mytable")@NamedQueries({        @NamedQuery(name = "findAll",            query = "SELECT n FROM mytable n"),        @NamedQuery(name = "getForUsers",            query = "SELECT n FROM mytable n WHERE users @> :users")                })public class MyObject{   @Id   @GeneratedValue(strategy = GenerationType.IDENTITY)   private long id;   @Column(name="title")   private String title;    @Column(name="users", columnDefinition="bigint array")   private Long[] users ;   //constructor, getters and setters}當我想使用 namedquery getForUsers 時遇到一些問題:org.hibernate.HibernateException:命名查詢中的錯誤:getForUsers 失敗,因為:org.hibernate.QueryException:意外字符:'@' [SELECT n FROM MyObject n WHERE users @> :users]但是當我在 pgAdmin 中編寫它時,它運行良好。我該怎么做?提前致謝。
查看完整描述

1 回答

?
至尊寶的傳說

TA貢獻1789條經驗 獲得超10個贊

我的編輯不允許刪除或更新(ElementCollection),因此在初始狀態下,這有效:


@NamedNativeQueries({

    @NamedNativeQuery(name="getForUser", query = "SELECT * FROM mytable n WHERE n.users @> ?1 ", resultClass=MyObject.class)

}) 


查看完整回答
反對 回復 2022-11-02
  • 1 回答
  • 0 關注
  • 116 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號