2015-05-04 99 views
0

我有一个图书馆和册的亲子关系,春库和延迟加载

public class Library {  
    @OneToMany() 
    private List<Books> books;  
} 

public class Book {  
@ManytoOne() 
private Library; 
} 

public interface LibraryRepository extends PagingAndSortingRepository<Library, Long> { 
} 

在查询库的储存库,我得到的书籍也随之库信息。我想列表中查询书,只得到所有的库..

+0

查看这里取得的类型 http://stackoverflow.com/a/18605401/1844148 – Dileep

回答

0

使用读取= FetchType.LAZY:

public class Library { 

@OneToMany(fetch = FetchType.LAZY) 
private List<Books> books; 

} 

,还可以使用DTO result.DTO被使用返回你有什么想显示client.You可以改变从表名不同的DTO类属性名以dB为安全reason.Your DTO类应该是这样的:

public class LibraryDTO { 
//private properties belongs to Library 
//getters and setters 
    LibraryDTO(Library lib){ 
     this.id = lib.getId(); 
     //etc 
    } 
} 

初始化您的DTO在控制器类:

List<Library> libraries = serviceLibrary.getLibraries(); 

    List<LibraryDTO> libraryDTOs= new ArrayList<LibraryDTO>(); 
    for (Library library: libraries) { 
     libraryDTOs.append(new LibraryDTO(library)); 
    }