ユーザのエンティティクラスを作り、ユーザのレポジトリインタフェースをつくりました。あとはレポジトリインタフェースをインジェクトしてエンティティクラスをもとにユーザテーブルへの保存、削除などの操作が可能になりました。が、ユーザの保存に関して一点問題になった点があります。
JAVA
1package com.jpa.test.model; 2 3import java.util.Date; 4import java.util.List; 5 6import javax.persistence.*; 7 8@Entity 9@Table(name = "m_user") 10public class User { 11 12 @Id 13 @GeneratedValue(strategy = GenerationType.AUTO) 14 private Long id; 15 private String username; 16 private Integer age; 17 private Date create_at; 18 private Date update_at; 19 /* アクセサ省略 */ 20}
以上のエンティティクラス(プロパティがすべてセットされている場合)がありますが、ユーザレポジトリを通してsave関数を実行したら、以下のようなベースクエリーが実行されようとします。
SQL
1INSERT INTO m_user(username,age,create_at,update_at) VALUES(?,?,?,?);
これの何が問題がというと、エンティティクラスにあるすべてのカラムメソッドを保存することになります。例えば特定のカラムを保存する場合どうすれば良いのかわかっていません。特定のカラムとは例えば以下のようなベースクエリーを実行したいする場合
SQL
1INSERT INTO m_user(username,age) VALUES(?,?);
JPQLも試して見ましたが、うまくいきませんでした。どなたか特定のカラムメソッドを保存する方法がわかる方教えて下さい。以上、宜しくお願い致します。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。