1 全局错误页面定制
1.1 static文件夹存放静态文件
此处为两个文件夹 static/error
1.2 页面错误类型
4xx一般是前端,客户端出现问题
5xx一般是后端出现问题
2 全局异常处理
2.1 定义全局异常处理器步骤
要捕获全局异常只需要以下几步即可:
- 创建一个类,在类上面添加@ControllerAdvice注解
- 编写任意一个方法,参数是HttpServletRequest和Exception,在方法上面添加@ExceptionHandler注解,方法返回值如果是字符串,则还需啊添加@ResponseBody,如果返回的是页面,则返回 ModelAndView 对象
- 按照自己的业务逻辑决定返回什么
3 关于xml的mybatis的整合
mybatis的出现是为了降低java与sql的耦合度
3.1 分页插件的本质是mybatis的拦截器
mysql 用limit实现分页
SQL server用top实现分页
Oracle·用seq实现分页
分页插件:pagehelper-spring-boot-starter(mysql)
数据库连接池:alibaba的druid数据库连接池(druid-spring-boot-starter)
helperDialect配置mysql
4 Thymeleaf
4.1 Thymeleaf可以处理的六种模板
1.HTML
2.XML
3.Text
4.JavaScript
5.CSS
6.Row
4.2 thymeleaf的优点
1.动静结合:页面采用模板+数据的方式,在前端美工手中,可以展示静态页面。在后台开发人员手中,也可以展示数据返回到页面后的界面。这是因为thymeleaf支持html原型,可以在原型上添加额外的属性,浏览器在解释html时会忽视未定义的属性,当定义的属性有值时就会动态替换静态页面,来实现动态展示。
2.开箱即用:它提供标准和spring标准两种方言,可以直接套用模板实现JSTL、 OGNL表达式效果,(
1.springMVC使用JSTL与EL表达式.
2.spring MVC默认的jsp页面的标签就是JSTL,而struts2默认的是OGNL标签。
3.struts2 使用OGNL与EL表达式:OGNL用struts2的自定标签内部。
)
避免每天套模板、改jstl、改标签的困扰。同时开发人员也可以扩展和创建自定义的方言。
3.多方言支持:Thymeleaf 提供spring标准方言和一个与 SpringMVC 完美集成的可选模块,可以快速的实现表单绑定、属性编辑器、国际化等功能。
4.与SpringBoot完美整合,SpringBoot提供了Thymeleaf的默认配置,并且为Thymeleaf设置了视图解析器,我们可以像以前操作jsp一样来操作Thymeleaf。代码几乎没有任何区别,就是在模板语法上有区别。
5 th:each
5.1 th:each的状态变量
当前迭代索引,从0开始。这是index属性。
当前迭代索引,从1开始。这是count属性。
迭代变量中的元素总数。这是size。
每个迭代的iter变量。这是current。
目前的迭代是偶数还是奇数。这些是even/odd布尔属性。
目前的迭代是否是第一个。这是first布尔属性。
目前的迭代是否是最后一个。这是last布尔属性。