spring data jpa 表不关联多表查询

直接上代码

import com.supergk.core.project.bean.ProjectUser;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;

public interface ProjectRepository extends JpaRepository<Project, Integer>, JpaSpecificationExecutor<Project> {
//

    @Query(value = "SELECT p.id as id, p.contactName as contactName, a.name as username FROM Project p, Account a WHERE p.contactName = ?1 and p.AccountId = a.id",
            countQuery = "SELECT count(p) FROM Project p, Account a WHERE p.contactName = ?1 and p.AccountId = a.id")
    Page<ProjectUser> findByLastname(String contactName, Pageable pageable);
}

package com.supergk.core.project.bean;

/**
 * Created by LM on 2017/8/7.
 */
public interface ProjectUser {
    public Integer getId();
    public String getContactName();
    public String getUsername();
}
这样就可以

Page<ProjectUser> findByLastname(String contactName, Pageable pageable);
也可以返回object
Page<Object>

Controller里面
        Page<ProjectUser> page = projectService.projectPageCriteria(pageable, project);
        System.out.println(page.getSort() + "--1");
        System.out.println(page.getSize() + "--2");
        System.out.println(page.getTotalPages() + "--3");
        System.out.println(page.getNumber() + "--4");
        System.out.println(page.getTotalElements() + "--5");
        System.out.println(page.getContent() + "-===");
//        List<ProjectUser> projectList = page.getContent();
        List<Object> projectList = page.getContent();
        for(int i = 0; i <projectList.size(); i++) {
            Object[]  os = (Object[])projectList.get(i);
            System.out.println(os[0]);
        }

版权声明:本文为qq_27153901原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。