Archive for July 26th, 2008

Lazy Reference Collection Mapping

Saturday, July 26th, 2008

Upcoming Compass 2.1 M3 now has a new feature allowing for lazy loaded reference mapping in Compass when using it on top of collections. Reference mapping in Compass simply stores the relationship between one object and another (the ids), and many times there is no need to load all the references in advance while unmarshalling an object. Now, reference mappings on top of collections can be lazily loaded. Here is an example:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
@Searchable
public class Customer {
 
    @SearchableId
    private int id;
 
    @SearchableReference(lazy = Lazy.TRUE)
    private List<Order> orders;
}
 
@Searchable
public class Order {
 
    @SearchableId
    private int id;
}