Próbuję włączyć Spring-Data-JPA do mojego projektu. Jedyną rzeczą, która mnie wprawia w zakłopotanie, jest to, w jaki sposób mogę osiągnąć setMaxResults (n) za pomocą adnotacji?
na przykład mój kod:
public interface UserRepository extends CrudRepository<User , Long>
{
@Query(value="From User u where u.otherObj = ?1 ")
public User findByOhterObj(OtherObj otherObj);
}
Muszę tylko zwrócić one (and only one)
użytkownika z otherObj, ale nie mogę znaleźć sposobu na dodanie adnotacji do maxResults. Czy ktoś może mi podpowiedzieć?
(mysql narzeka:
com.mysql.jdbc.JDBC4PreparedStatement@5add5415: select user0_.id as id100_, user0_.created as created100_ from User user0_ where user0_.id=2 limit ** NOT SPECIFIED **
WARN util.JDBCExceptionReporter - SQL Error: 0, SQLState: 07001
ERROR util.JDBCExceptionReporter - No value specified for parameter 2
)
Znalazłem link: https://jira.springsource.org/browse/DATAJPA-147 , próbowałem, ale nie udało się. Teraz wydaje się to niemożliwe? Dlaczego tak ważna funkcja nie jest wbudowana w Spring-Data?
Jeśli zaimplementuję tę funkcję ręcznie:
public class UserRepositoryImpl implements UserRepository
Muszę zaimplementować mnóstwo predefiniowanych metod CrudRepository
, to byłoby straszne.
środowiska: spring-3.1, spring-data-jpa-1.0.3.RELEASE.jar, spring-data-commons-core-1.1.0.RELEASE.jar