springデータjpaとの双方向の1対多の関係を構築しようとしていますが、@onetomanyで注釈が付けられたリストは常に1要素を返します。ここでSpring jpa onetomanyは1つの要素のみを返します
は私のエンティティのためのコードは(セッターとゲッターは省略)である:
@Entity
@Table(name = "sdk_sdk")
public class SDKEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private String version;
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER, mappedBy = "sdk")
@OrderBy("order ASC")
private List<SDKFileEntity> fileEntities;
}
そして第二の実体:
@Entity
@Table(name = "sdk_file")
public class SDKFileEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private String fileType;
private Integer sdkId;
public SDKFileEntity() {
}
@ManyToOne
@JoinColumn(name = "id", insertable = false, updatable = false)
private SDKEntity sdk;
私はsdkIdが対応manytooneマッピングを持ってしようとしていますSDKEntityクラスのid。
ここで、ファイルのサイズが1であるSDKEntity entity=repository.findOne(foo);
List<SDKFileEntity> files=entity.getFileEntities();
、私が持っている:私は春のリポジトリを使用してsdkEntityからsdkfilesを取得しようとするたびに は、リストのサイズは、例えばので、常に1
です2番目の要素を取得するためにデータベースから最初の要素を削除します。
のようなデータベースのカラム名で書かれたように、実際の列名でなければなりません疑わしいその一つだけ 'SDKFileEntity' –
sdkenttityの要素を追加する方法を示します – xyz
エンティティを作成する前に要素が既にテーブルに入っていました –