今天在網(wǎng)上搜索了一些SpringBoot和PageHelper集成的一些例子,覺得有點難懂玷坠,還有些說要去啟動類里面配置PageHelper插件疆柔,也有的說在application.properties里面設(shè)置一些屬性厌蔽,對于初學(xué)者這分頁起來有點難,下面貢獻(xiàn)一些我自己的代碼抢腐,就只是簡單的分頁姑曙,沒有設(shè)置一些額外的屬性。
UserMapper.java
@Mapper
? ? public interface UserMapper {
? ? @Select("select id,name,age from user")
? ? public List<User> selectUser();
? ? }
2.PageService
public interface PageService {
public List<User> getPageList(int pageNo,int pageSize);
}
3.PageServiceImpl
@Service
public class PageServiceImpl implements PageService {
@Autowired
private? UserMapper userMapper;
@Override
public List<User> getPageList(int pageNo,int pageSize) {
PageHelper.startPage(pageNo, pageSize);
List<User> list=userMapper.selectUser();
return list;
}
}
4.Controller
@Controller
public class HelloController {
@Autowired
private PageService pageServiceImpl;
@RequestMapping("/")
@ResponseBody
public List<User> hh(int pageNo,int pageSize) {
return pageServiceImpl.getPageList(pageNo,pageSize);
}
}
5.啟動類
@SpringBootApplication
public class Test {
public Test() {
// TODO Auto-generated constructor stub
}
public static void main(String[] args) {
SpringApplication.run(Test.class, args);
}
}
6.額外的一個依賴
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.3</version>
</dependency>
網(wǎng)上說要在啟動類增加如下代碼(我沒試過,估計有什么玄機(jī)吧)
@Bean
public PageHelper pageHelper(){
? ? System.out.println("開始配置數(shù)據(jù)分頁插件");
? ? PageHelper pageHelper = new PageHelper();
? ? Properties properties = new Properties();
? ? properties.setProperty("offsetAsPageNum","true");
? ? properties.setProperty("rowBoundsWithCount","true");
? ? properties.setProperty("reasonable","true");
? ? properties.setProperty("dialect","mysql");
? ? pageHelper.setProperties(properties);
? ? return pageHelper;
}
或者在application.properties增加如下代碼:
pagehelper.helperDialect=mysql
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql