直接上代码
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]);
}