簡體   English   中英

休眠查詢無法在Java Spring中工作

[英]hibernate query not working in java spring

我有此代碼,並且工作正常

Registration person = (Registration) session.get(Registration.class, 8);
      person.setConfirmed(true);
      session.save(person);

但這不起作用,表示映射錯誤

String query = "FROM registration WHERE user_id = 8";
 Query query2 = session.createQuery(query);
 Registration person = (Registration) query2.uniqueResult();
 person.setConfirmed(true);
 session.save(person);

這是我的注冊課程

@Column(name = "user_id")
    public Integer getUserId() {
        return userId;
    }

由於您使用的是非本地查詢語言,因此可能需要類似

String query = "FROM Registration WHERE userId = 8";

@Pasha,以下代碼是一個SQL查詢而不是HQL查詢。

String query = "FROM registration WHERE user_id = 8";
Query query2 = session.createQuery(query);

如果必須運行SQL查詢,請改用以下命令:

String query = "FROM registration WHERE user_id = 8";
Query query2 = session.createSQLQuery(query); 
query2.executeUpdate();

要將注冊查詢轉換為HQL查詢,請假設Registration類具有userId字段:

String query = "FROM registration WHERE userId = 8";
Query query2 = session.createQuery(query); 
query2.executeUpdate();

有關完整的示例,請參見以下指南: http : //krams915.blogspot.com/2011/03/spring-hibernate-one-to-many.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM