1111<dependency>
1212 <groupId>io.github.u2ware</groupId>
1313 <artifactId>spring-data-rest-jpa-specification</artifactId>
14- <version>2.1.5.2 .RELEASE</version>
14+ <version>2.1.5.3 .RELEASE</version>
1515</dependency>
1616----
1717
@@ -188,8 +188,10 @@ link:./src/main/java/org/springframework/data/rest/core/event/RepositoryRestEven
188188public class MyPeopleHandler extends RepositoryRestEventHandler<People>{ //**
189189
190190 @Override
191- public void handleBeforeRead(People entity, PredicateBuilder<People> builder) {
191+ public void handlePredicateBuilder( PredicateBuilder<People> builder) {
192192
193+ People entity = builder.getRequestParamToEntity();
194+
193195 builder.and().eq("name", entity.getName())
194196 .and().like(...)
195197 ...
@@ -209,7 +211,7 @@ public class MyPeopleHandler extends RepositoryRestEventHandler<People>{ //**
209211----
210212
211213다음과 같이
212- link:./src/main/java/org/springframework/data/rest/core/annotation/HandleBeforeRead .java[@HandleBeforeRead ]
214+ link:./src/main/java/org/springframework/data/rest/core/annotation/HandlePredicateBuilder .java[@HandlePredicateBuilder ]
213215을 사용하는 방법도 있습니다.
214216
215217[source,java,indent=1]
@@ -219,10 +221,12 @@ link:./src/main/java/org/springframework/data/rest/core/annotation/HandleBeforeR
219221@RepositoryEventHandler(People.class) //**
220222public class MyPeopleHandler {
221223
222- @HandleBeforeRead // --> /peoples/!q
223- public void handleBeforeRead(People entity, PredicateBuilder<People> builder) {
224+ @HandlePredicateBuilder // --> /peoples/!q
225+ public void handlePredicateBuilder( PredicateBuilder<People> builder) {
224226
225- builder.and().eq("name", entity.getName())
227+ MultiValueMap<String,Object> params = builder.getRequestParam();
228+
229+ builder.and().eq("age", params.getFirst("age"))
226230 .and().like(...)
227231 ...
228232 }
0 commit comments