0
私はバイトバディを使用して、JPAエンティティとJPAリポジトリを生成しています。私はJPAエンティティを生成できますが、対応するJPAリポジトリを生成することはできません。以下は、バネブートJPAリポジトリクラスのバイトバディ実行時代
今Class<?> type = new ByteBuddy()
.subclass(Object.class)
.name("Person")
.defineField("id", Integer.class, Visibility.PRIVATE)
.defineMethod("getId", Integer.class, Visibility.PUBLIC)
.intercept(FieldAccessor.ofBeanProperty())
.defineMethod("setId", void.class, Visibility.PUBLIC).withParameter(Integer.class)
.intercept(FieldAccessor.ofBeanProperty())
.make()
.load(getClass().getClassLoader(), ClassLoadingStrategy.Default.WRAPPER)
.getLoaded();
私は以下のようにJPAのreporitories・ブート対応の春を生成したいと思い、私は次のようにビュートバディを使用して、上記生成することができる午前
import javax.persistence.*;
@Entity
public class Person {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
protected Person(){}
@Override
public String toString() {
return String.format("Person[id=%d]",id,name);
}
}
Personエンティティを表すコードであります
import com.model.Person;
import org.springframework.data.jpa.repository.JpaRepository;
public interface PersonRepository extends JpaRepository <Person, Long> {
}
Generic属性を使用してこのインターフェイスを作成する方法。また、この作業(動的コード生成を使用して)がPersonオブジェクトを永続化するでしょうか?