1

これは、HibernateアノテーションおよびJPAアノテーションとの最初の連絡先です。最近、私はHibernate ORMとMVCを使ったプロジェクトに携わり、Eclipse IDEで動かそうとすると問題に直面しています。 User.javagetterおよびsettersメソッド宣言なしでHibernate @Columnアノテーションを使用する

: は、私は、このようなクラスの宣言があるとし

import javax.persistence.Column; 
import javax.persistence.Entity; 
import javax.persistence.GeneratedValue; 
import javax.persistence.Id; 
import javax.persistence.Table; 

import lombok.Data; 

@Data 
@Entity 
@Table(name = "user") 
public class User { 

    @Id 
    @GeneratedValue 
    @Column(name="id_user") 
    private int id_user; 

    @Column(name="name") 
    private String name; 

    @Column(name="email") 
    private String email; 

    @Column(name="accesslevel") 
    private int accesslevel; 

    @Column(name="username") 
    private String username; 
} 

そして、私は別のクラスは、私のMVCからユーザコントローラでは、例えば、このクラスからオブジェクトを作成している場合パターン:

User admin = new User(); 
admin.setUsername("Thommas"); 

その後、私はエラー

を得る

「setUsername(String)をタイプユーザーのために定義されていません」

私はgetterとsetterメソッドが明示的に私のクラスで宣言されていないことを知っています。しかし、このコードはこのように他の人のために書かれました。

私の質問は次のとおりです。

@Entity注釈を使用して宣言のこのタイプは、使用可能性であるそれらを明示的に宣言せずにGetさんとset'tはとても人が何をしたか、それが正しいだと正常に動作しますので問題はありませんコードが、別のような輸入正しくライブラリまたはEclipseの設定

OR

これが許可されていないと私はゲッターとセッターメソッドを宣言する必要があります。

私が知りたいことこれが正しく、問題が私の設定にある場合、ツールが注釈を正しく認識していない可能性があります。ありがとうございました!

答えて

1

このプロジェクトではLombokを使用しています。 それを認識するには、依存関係として追加し、configure IDEを追加する必要があります。

+0

これは5秒で私の問題を解決しました!どうもありがとうございます! –

関連する問題