spring boot and mybatis use pagehelper:
1, adding pagehelper in pom.xml cited:
<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.0.4</version> </dependency> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.11</version> </dependency>
2. Increase in application.properties file:
pagehelper.offsetAsPageNum=true
pagehelper.rowBoundsWithCount=true
pagehelper.pageSizeZero=true
pagehelper.reasonable=false
pagehelper.params=pageNum=pageHelperStart;pageSize=pageHelperRows;
pagehelper.supportMethodsArguments=false
Application.properties increase in the following statement, open the log under com.example.boot2.mapper package, sql statements in this package can be output in the console.
logging.level.com.example.boot2.mapper=debug
3. Controller files:
@Autowired
private UserService userService;
@RequestMapping(method = RequestMethod.GET, value = "/selectPage/{pageNum}/{pageSize}") public PageInfo<User> selectPage(@PathVariable("pageNum") int pageNum, @PathVariable("pageSize") int pageSize) { PageInfo<User> page = userService.selectPage(pageNum, pageSize); System.out.println(page.getPageSize()); return page; }
4. UserService Interface:
public PageInfo<User> selectPage(int pageNum, int pageSize);
5. UserServiceImpl implementation class:
@Autowired Private UserMapper UserMapper; public PageInfo <the User> SelectPage ( int pageNum, int the pageSize) { // The parameters passed to the method of physical pages can be achieved, is very simple. PageHelper.startPage (pageNum, the pageSize); List <the User> List = userMapper.selectAll (); System.out.println (list.size ()); PageInfo Page = new new PageInfo (List); return Page; }
In query userMapper.selectAll (); preceded: PageHelper.startPage (pageNum, pageSize); behind the query statement i.e. paging function added.
6. UserMapper 接口: List<User> selectAll();
7. UserMapper.xml file:
<select id="selectAll" resultMap="BaseResultMap" > select <include refid="Base_Column_List" /> from se_user </select>
Browser access: http: // localhost: 8080 / user / selectPage / 5/3
Log is as follows:
2019-06-03 17:43:24.713 DEBUG 30808 --- [nio-8080-exec-5] c.e.b.mapper.UserMapper.selectAll_COUNT : ==> Preparing: SELECT count(0) FROM se_user 2019-06-03 17:43:24.713 DEBUG 30808 --- [nio-8080-exec-5] c.e.b.mapper.UserMapper.selectAll_COUNT : ==> Parameters: 2019-06-03 17:43:24.783 DEBUG 30808 --- [nio-8080-exec-5] c.e.b.mapper.UserMapper.selectAll_COUNT : <== Total: 1 2019-06-03 17:43:24.783 DEBUG 30808 --- [nio-8080-exec-5] c.e.boot2.mapper.UserMapper.selectAll : ==> Preparing: select sid, user_num, user_real_name, user_nick_name, user_id_code,
user_address, user_head_pic, user_self_head_pic, user_id_code_front_pic, user_id_code_back_pic, user_approve_status, user_create_date, user_longitude, user_latitude, user_frequent_address,
user_service_num, user_speciality, user_balance, user_service_status, user_apply_datetime, user_service_city, user_company, user_age, user_sex, user_refusal_reason, user_collection_num, user_mcount,
user_telephone, user_approved_datetime, user_is_star, user_invite_no, two_dimension_code, used_capacity, max_capacity, friend_background, click_num, is_discount, user_role, is_use, user_stock_num, is_agent,
member_point, member_glory, member_level, frozen_money, agent_create_time, business_code, user_address_detail, is_sign, user_source, is_house_manager, data_source, deposit_money from se_user LIMIT 12,3 2019-06-03 17:43:24.783 DEBUG 30808 --- [nio-8080-exec-5] c.e.boot2.mapper.UserMapper.selectAll : ==> Parameters: 2019-06-03 17:43:24.789 DEBUG 30808 --- [nio-8080-exec-5] c.e.boot2.mapper.UserMapper.selectAll : <== Total: 3 3 3
Back Data 3: