我建立了一个使用Spring Repositories来通过Hibernate和JPA管理MySQL数据库的CRUD操作的DAL。特别地,这是我的Repository定义:
package my.dal.repository;
import my.domain.dal.User;
import org.springframework.data.querydsl.QueryDslPredicateExecutor;
import org.springframework.data.repository.CrudRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface IUserRepository extends CrudRepository<User, String>, QueryDslPredicateExecutor<User>{
}
通过扩展
QueryDslPredicateExecutor
接口和findAll(Predicate)
方法,我可以使用QueryDSL谓词执行CRUD操作。但是,我面临的问题是无法进行跨表查询。实际上,我不能使用QueryDSL的连接功能,因为我没有一个HibernateQuery
。如何在Spring Repositories和QueryDSL中实现连接操作是正确的方法?谢谢。