You can use @OrderColumn(name = "added_ts") to achieve ordering.
@ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
@JoinTable(name = "WISHLISTS_BOOKS", joinColumns = { @JoinColumn(name = "BOOK_ID") }, inverseJoinColumns = { @JoinColumn(name = "WISHLIST_ID") })
@OrderColumn(name = "added_ts")
private Set<Book> books;