The realization of mybatis paging function

The realization of the paging function of mybatis, which I summarized, is also learned from the Internet

1: We all know that no matter what framework is used to develop a project, it is those layers, persistence layer, business layer, object layer, control layer. Just look at the code.
First, the persistence layer, declare an interface, see the code:

package com.test.demo.dao;

import com.test.demo.model.BasicAndDrainageStc;
import com.test.demo.model.DamUser;
import com.test.demo.model.OperateRecode;
import com.test.demo.model.Page;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

@Mapper
public interface PageMapper {

    //  查询所有的信息
    @Select("select * from basicanddrainagestc")
    List<BasicAndDrainageStc> findBasicTablePage(@Param("page") Page page);
    
}

Then the service layer

package com.test.demo.service;

import com.test.demo.model.Page;
import org.springframework.security.core.parameters.P;

public interface PageService {

    public Page findBasicTablePage(Page page);
}

Then comes the service implementation layer

package com.test.demo.service.serviceImpl;

import com.test.demo.dao.PageMapper;
import com.test.demo.model.BasicAndDrainageStc;
import com.test.demo.model.DamUser;
import com.test.demo.model.OperateRecode;
import com.test.demo.model.Page;
import com.test.demo.service.PageService;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;

@Service("demoService")
public class PageServiceImpl implements PageService {

    @Resource
    private PageMapper pageMapper;

    @Override
    public Page findBasicTablePage(Page page) {
        List<BasicAndDrainageStc> list = pageMapper.findBasicTablePage(page);
        page.setData(list);
        return page;
    }
}

Implemented this most basic layer, and then call the method in the service layer in the control layer, see the code:

   package com.test.demo.controller;

import com.alibaba.fastjson.JSON;
//import com.alibaba.fastjson.JSONArray;
//import com.alibaba.fastjson.JSONObject;

import com.alibaba.fastjson.JSONArray;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.test.demo.model.BasicAndDrainageStc;
import com.test.demo.model.Page;
import com.test.demo.model.ValidateStc;
import com.test.demo.service.BasicAndDrainageStcService;


import com.test.demo.service.PageService;
import org.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.io.*;
import java.util.*;

@Controller
@RequestMapping("/BasicAndDrainageStcController")
public class BasicAndDrainageStcController {

    @Resource
    private JdbcTemplate jdbcTemplate;

    @Resource
    private PageService pageService;

    @Autowired
    private BasicAndDrainageStcService basicAndDrainageStcService;

    /**
     * 用
     *
     * @param page
     * @return
     */
    //  ?page=2&rows=5   每页5条选择第二页  每次使用方法的时候  带上参数
    @RequestMapping("findBasicTablePage")
    @ResponseBody
    public Page findPage(Page page){
        return pageService.findBasicTablePage(page);
    }
}

Directly visit
http: // localhost: 8080 / BasicAndDrainageStcController / findBasicTablePage in the browser to display a page of 10 lines of data by default, you can change
http: // localhost: 8080 / BasicAndDrainageStcController / findBasicTablePage? Page = 1 & rows = 10 where page is to display the number of pages rows is how many data a page

Note: All jar packages needed are searched online.

Published 13 original articles · Like1 · Visit 2006

Guess you like

Origin blog.csdn.net/qq_31152023/article/details/100653618