Springmvc使用PageHelper分頁插件


1、導入相關依賴

<!--使用PageHelper分頁插件-->
<dependency>
        <groupId>com.github.pagehelper</groupId>
        <artifactId>pagehelper</artifactId>
        <version>5.0.0</version>
</dependency>

2、在applicationContext.xml配置文件中增加PageHelper的定義

<bean id="sqlSessionFactory" class="com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource"/>
        <property name="configLocation" value="classpath:mybatis-config.xml"/>
        <property name="mapperLocations" value="classpath*:mapper/*Mapper.xml"/>
        <property name="typeAliasesPackage" value="com.zl.newHouse.entity"/>
        <!-- 添加全局配置 -->
        <property name="globalConfig" ref="globalConfig"/>
        <!-- 配置PageHelper分頁插件 -->
        <property name="plugins">
            <array>
                <bean class="com.github.pagehelper.PageInterceptor">
                    <property name="properties">
                        <props>
                            <prop key="helperDialect">oracle</prop> //如果是mysql只需要更改為mysql即可
                            <prop key="reasonable">true</prop>
                        </props>
                    </property>
                </bean>
            </array>
        </property>
    </bean>

測試:

條件類:

@Data
@AllArgsConstructor
@NoArgsConstructor
public class HouseQueryInfo {
    private int pageIndex;//當前頁碼(頁面傳遞)
    private int pageSize;//頁容量(后台設置)
    private String title;
    private String price_on;
    private String price_down;
    private String street_id;
    private String type_id;
    private String floorage_on;
    private String floorage_down;
    
}
View Code

編寫一個接口:

public interface  IHouseService extends IService<House>{
    
    //根據條件查詢所有房屋信息,分頁顯示  findAllHouse自己編寫多表多條件查詢的sql語句
    List<House> findAllHouse(HouseQueryInfo houseInfo) throws Exception;

    //使用pagehelper分頁查詢
    public PageInfo<House> findBookPage(HouseQueryInfo houseInfo) throws Exception;
}

編寫一個接口的實現類:

//根據條件查詢所有房屋信息,分頁顯示
@Override
public List<House> findAllHouse(HouseQueryInfo houseInfo) throws Exception {
    return houseMapper.findAllHouse(houseInfo);
}
//根據查詢出來的數據分頁顯示
@Override
public PageInfo<House> findBookPage(HouseQueryInfo houseInfo) throws Exception {
        PageHelper.startPage(houseInfo.getPageIndex(),houseInfo.getPageSize());
    List<House> bookHouses = houseMapper.findAllHouse(houseInfo);
    PageInfo pageinfo = new PageInfo(bookHouses);
    return pageinfo;
}

測試數據:

@Test
public void testpage() throws  Exception{
    HouseQueryInfo houseInfo = new HouseQueryInfo(1,3,"", "", "", "", "", "", "");
    PageInfo pageInfo = houseService.findBookPage(houseInfo);
    System.out.println("總數量" + pageInfo.getTotal());
    System.out.println("當前頁查詢記錄數" + pageInfo.getList().size());
    System.out.println("當前頁碼" + pageInfo.getPageNum());
    System.out.println("每頁顯示數量" + pageInfo.getPageSize());
    System.out.println("總頁" + pageInfo.getPages());
    System.out.println("當前頁查詢記錄" + pageInfo.getList());
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM