Skip to content

Instantly share code, notes, and snippets.

@Sam-Kruglov
Last active January 11, 2018 10:19
Show Gist options
  • Save Sam-Kruglov/9ee72f3dce7ac15fdc4b3b028b67dadc to your computer and use it in GitHub Desktop.
Save Sam-Kruglov/9ee72f3dce7ac15fdc4b3b028b67dadc to your computer and use it in GitHub Desktop.
Projection recursive open
public interface UserRepository extends CrudRepository<User, Long> {
@RestResource(path = "username", rel = "getUsername")
UserUsernameAndGroupName findUsernameAndGroupNameById(@Param("id") Long id);
interface UserUsernameAndGroupName {
String getUsername();
default String getGroupName() {
return getGroup().getName();
}
@JsonIgnore
GroupName getGroup();
interface GroupName {
String getName();
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment