2016-12-23 9 views
0

私は2列store_numberとMANAGER_IDを持つテーブルがあると私はこのテーブルのエンティティとリポジトリクラスを作成しました。ここで 春JPA/Hibernateのfindby列名の戻り空のコレクション

@Entity 
public class StoreManagers { 
    @Id 
    @GeneratedValue 
    @Column(name="store_number") 
    private String storeNumber; 
    private String managerId; 
    public StoreManagers() { 
    } 
    public String getStoreNumber() { 
     return storeNumber; 
    } 
    public void setStoreNumber(String storeNumber) { 
     this.storeNumber = storeNumber; 
    } 
    public String getManagerId() { 
     return managerId; 
    } 
    public void setManagerId(String managerId) { 
     this.managerId = managerId; 
    } 
    @Override 
    public String toString() { 
     return "StoreManagers [storeNumber=" + storeNumber + ", manageId=" + managerId + "]"; 
    } 
} 




public interface StoreManagersRepository extends JpaRepository<StoreManagers, String> { 
     List<StoreManagers> findByStoreNumber(String storeNumber); 
} 

が休止状態の問い合わせがあり、それは空のリストを返します

Hibernate: select storemanag0_.manager_discount_id as manager_1_2_, storemanag0_.store_number as store_nu2_2_ from storemanagers storemanag0_ where storemanag0_.store_number=? 2016-12-23 12:16:15.763 TRACE 644 --- [nio-4000-exec-1] o.h.type.descriptor.sql.BasicBinder  : binding parameter [1] as [VARCHAR] - [00012] 

    : [] 

結果:

私は

Beanクラスの下にリポジトリメソッドを使用してstore_numberことでMANAGER_IDを照会しようとしていますしかし、上記のクエリを直接実行すると結果が得られます。

私にこれを手伝ってください。ワット私はここで間違っている?

+0

を使用することができます見ているが、まだコミットされていないが挿入されています。 –

+0

問題のある箇所にコードを追加してください。 –

+0

投稿した編集内容を上書きしないようにしてください。 –

答えて

0

データベースの下線付きフィールド名を維持する場合は、@Column(name="store_number")を使用してエンティティフィールドに注釈を付け、あなたのフィールドの名前をキャメルケースに変更します。あなたのリポジトリに

@Column(name="store_number") 
private int storeNumber; 

、あなたは同じstoreNumberを渡していない、またはあなたとアプリが同じデータベース、またはあなたがしているデータを使用していないいずれかの方法

findByStoreNumber(int storeNumber) 
+0

same..pleaseを使用すると、質問セクションのエンティティクラスコードを参照してください。 – Hanumanthraju

+0

デフォルトでは、データベースでアンダースコアを使用でき、ラクダの場合はアンダースコアに分割されます。 http://stackoverflow.com/a/29088398/3448799 – richersoon

+0

'storeNumber'を' int'または 'long'に変更してみるか、' storeNumber'が英数字であれば、 'id'と' '@ GeneratedValue'によって注釈が付けられています – Kihats

関連する問題