Tôi đang cố gắng kết hợp Spring-Data-JPA vào dự án của mình. Một điều làm tôi bối rối là làm cách nào để đạt được setMaxResults (n) bằng cách chú thích?
ví dụ: mã của tôi:
public interface UserRepository extends CrudRepository<User , Long>
{
@Query(value="From User u where u.otherObj = ?1 ")
public User findByOhterObj(OtherObj otherObj);
}
Tôi chỉ cần trả về one (and only one)
Người dùng từ otherObj, nhưng tôi không thể tìm cách chú thích maxResults. Ai đó có thể cho tôi một gợi ý?
(mysql phàn nàn:
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
)
Tôi đã tìm thấy một liên kết: https://jira.springsource.org/browse/DATAJPA-147 , tôi đã thử nhưng không thành công. Có vẻ như không thể bây giờ? Tại sao một tính năng quan trọng như vậy không được tích hợp vào Spring-Data?
Nếu tôi thực hiện tính năng này theo cách thủ công:
public class UserRepositoryImpl implements UserRepository
Tôi phải thực hiện hàng tấn phương pháp được xác định trước CrudRepository
, điều này sẽ rất tệ.
môi trường: spring-3.1, spring-data-jpa-1.0.3.RELEASE.jar, spring-data-commons-core-1.1.0.RELEASE.jar