Oracle 은 MyBatis 에서 RowBounds 를 사용 하여 페이지 조회 기능 을 실현 합 니 다.
MyBatis 의 RowBounds 를 사용 하여 페이지 조 회 를 할 때 sql 구문 에 offset,limit,my batis 를 쓸 필요 가 없습니다.페이지 sql 을 자동 으로 연결 하고 offset,limit 를 추가 하여 자동 으로 페이지 를 나 눌 수 있 습 니 다.
프론트 데스크 톱 에서 매개 변수 currentPage 와 pageSize 두 개의 매개 변 수 를 전달 해 야 합 니 다.각각 현재 페이지 와 각 페이지 의 수량 입 니 다.contrller 층 은 매개 변 수 를 service 층 에 전달 하면 됩 니 다.다음은 service 가 실현 하 는 코드 입 니 다.
package com.xyfer.service.impl;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.session.RowBounds;
import com.xyfer.dao.UserDao;
import com.xyfer.service.UserService;
public class UserServiceImpl implements UserService {
private UserDao userDao;
@Override
public Map<String, Object> queryUserList(String currentPage, String pageSize) {
//
int total = userDao.queryCountUser();
//
Map<String,Object> resultMap = new HashMap<String,Object>();
resultMap.put("total", total);
//
int totalpage = (total + Integer.parseInt(pageSize) - 1) / Integer.parseInt(pageSize);
resultMap.put("totalpage", totalpage);
//
int offset = (Integer.parseInt(currentPage)-1)*Integer.parseInt(pageSize);
RowBounds rowbounds = new RowBounds(offset, Integer.parseInt(pageSize));
//
List<Map<String, Object>> userList = userDao.queryUserList(rowbounds);
resultMap.put("userList", userList);
return resultMap;
}
}
dao 계층 인터페이스:
package com.xyfer.dao;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.session.RowBounds;
public interface UserDao {
public int queryCountUser(); //
public List<Map<String, Object>> queryUserList(RowBounds rowbounds); //
}
대응 하 는 mapper.xml 파일:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xyfer.mapper.UserMapper">
<!-- -->
<select id="queryCountUser" resultType="java.lang.Integer">
select count(1) from user
</select>
<!-- -->
<select id="queryUserList" resultType="java.util.Map">
select * from user
</select>
</mapper>
postman 호출 인 터 페 이 스 를 통 해 해당 하 는 매개 변 수 를 전송 하면 페이지 별로 데 이 터 를 조회 할 수 있 습 니 다.총결산
위 에서 말 한 것 은 소 편 이 소개 한 Oracle 이 MyBatis 에서 Row Bounds 를 사용 하여 페이지 조회 기능 을 실현 하 는 것 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 면 메 시 지 를 남 겨 주세요.소 편 은 신속하게 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
만약 당신 이 본문 이 당신 에 게 도움 이 된다 고 생각한다 면,전 재 를 환영 합 니 다.번 거 로 우 시 겠 지만 출처 를 밝 혀 주 십시오.감사합니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
자바 작업 은 Clob 또는 NClob 데이터 형식의 저장 프로 세 스 인 스 턴 스 를 포함 합 니 다.텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.