SpringBoot+vue实现评论区分页效果

当评论区含大量数据时,一次性查询速度很慢,所以使用分页,实现分页效果。

前端: 

					

评论

{{r.account}}
{{r.content}}
{{r.remarkTime}}

 javaScrip向后端传数据

form: {
					
		remark: [],
		pageNum: 1,
		pageSize: 4,
		total: 0,
},



handleSizeChange(val) {
				this.form.pageSize = val;
				this.form.pageNum = 1;
				this.remarkFind();
			},
			handleCurrentChange(val) {
				this.form.pageNum = val;
				this.remarkFind();
			},
			remarkFind() {
				this.$http.get("remark/remark/findRemark/?id=" + id+"&pageNum="+this.form.pageNum+"&pageSize="+this.form.pageSize).then(resp => {
					this.form.remark = resp.data.data.list;
					this.form.total = resp.data.data.total;
					// console.log(this.form.remark);
				})

后端web层:

    @GetMapping("/findRemark/")
    CommonData findRemark(Integer id, @Param("pageNum")Integer pageNum,@Param("pageSize")Integer pageSize){
        return remarkService.findRemark(id,pageNum,pageSize);
    }

 service层

    public CommonData findRemark(Integer id,Integer pageNum,Integer pageSize) {
        PageHelper.startPage(pageNum,pageSize);
        Integer newsinfoid=id;
        List r=remarkDao.findRemark(newsinfoid);
        PageInfopageInfo=new PageInfo<>(r);
        return new CommonData(200,pageInfo,"查询成功!");
    }

Dao层: 

    List findRemark(Integer newsinfoid);

MyBatis: 

    

需要注意的是不要在sql语句最后加分号";" 

不然你就会产生这样的错误

### SQL: SELECT         u.account,         r.content,         r.remark_time         FROM         remark r         INNER JOIN USER u         ON u.id = r.userid         WHERE r.state = 1         AND r.newsinfoid = ? order by remark_time desc; LIMIT ?
### Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 4' at line 10
; bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 4' at line 10

 

因为分页是SpringBoot已经封装好的,会在sql语句中自动加上limit去分页查询,加了分号springboot添加limit查询会产生语法错误 

你可能感兴趣的:(每日总结,后端,Mybatis,vue.js,spring,boot,vue)