记录一次解决bug的过程
在使用thymeleaf与spring组合开发时,遇到下面这个bug
An error happened during template parsing (template: "class path resource [templates/index.html]")
org.thymeleaf.exceptions.TemplateInputException: An error happened during template parsing (template: "class path resource [templates/index.html]")
根据问题描述,可以看到是index页面出现了问题,继续往下看日志,下面又出现了原因,可以清晰地看到,是我表达式写错了。
然而,在我对照thymeleaf官方文档进行了校对之后,我的表达式没有问题,那么问题自然而然地就应该转向了后端(thymeleaf中需要从后端的model模型中取值),经过检查过后发现似乎是pagenation.page对象没有初始化的原因。
if (page < 1){
this.page = 1;
}
if (page > totalPage){
this.page = totalPage;
}
可以看到在上面的代码中,我对page属性进行了简单的异常处理,但是正常的page属性如果不在这个范围内,是没有赋值的,因此解决方法就显而易见了:
// 在一开始,先进行一次初始化
this.page = page;
if (page < 1){
this.page = 1;
}
if (page > totalPage){
this.page = totalPage;
}
记录一次简单的bug处理过程,请后来同学参考,bug排除思路:thymeleaf语法–model属性是否对应–变量是否有值