javaweb项目开发案例 java项目开发案例经典( 三 )


javaweb项目开发案例 java项目开发案例经典

文章插图


javaweb项目开发案例 java项目开发案例经典

文章插图
thymeleaf公共页面元素抽取
javaweb项目开发案例 java项目开发案例经典

文章插图
这里模板名就是html页面的名字,即xxx(模板名).html这里的模板名会使用thymeleaf的前后缀配置规则进行解析三种引入功能片段的th属性
javaweb项目开发案例 java项目开发案例经典

文章插图
具体使用参考下面这篇文章Thymeleaf 模板布局 th:fragment、th:replace、th:insert、th:remove
如果使用了thymeleaf模板引擎,那么controller层的返回值就会由模板引擎自动拼串,因此如果我们还想转发或者重定向到某个请求,就需要加上forward或者redirect前缀加上forward或者redirect前缀后,springboot也提供了各自的视图解析处理器,底层就是原生的转发和重定向SpringMVC中的forward和redirect前缀路径问题:package com.czl.controller;
@Controller
public class HelloController {
/**
  • forward:转发到一个页面
  • /hello.jsp:转发当前项目下的hello;
  • 一定加上/,如果不加/就是相对路径 。容易出问题;
  • forward:/hello.jsp
  • forward:前缀的转发,不会由我们配置的视图解析器拼串
  • @return
*/
@RequestMapping(“handle01”)
public String handle01(){
System.out.println(“handle01…”);
return “forward:/hello.jsp”;
}
@RequestMapping(“handle02”)
public String handle02(){
System.out.println(“handle02…”);
return “forward:/handle01”;
}
/**
  • 重定向到hello.jsp页面
  • 有前缀的转发和重定向操作,配置的视图解析器就不会进行拼串;
  • 转发 forward:转发的路径
  • 重定向 redirect:重定向的路径
  • /hello.jsp:代表就是从当前项目下开始;在SpringMVC中会为路径自动的拼接上项目名
  • 原生的Servlet重定向/路径需要加上项目名才能成功,
  • 重定向的url路径是要发给浏览器让浏览器按照该url访问服务器的,而浏
  • 览器解析/ 只到站点,如 localhost:8080/,使用response.sendRedirect(“/hello.jsp”),浏览器只会解析为:
  • localhost:8080/hello.jsp
  • response.sendRedirect(“/hello.jsp”)//访问不到,要加上项目名 /SpringMVC_viewResolver_06/hello.jsp
  • @returnrd.include(requestToExpose, response);
*/
@RequestMapping(“handle03”)
public String handle03(){
System.out.println(“handle03…”);
return “redirect:/hello.jsp”;
}
@RequestMapping(“handle04”)
public String handle04(){
System.out.println(“handle04…”);
return “redirect:/handle03”;
}
}
SprinBoot中的日期格式化问题
SpringBoot底层日期格式化原理:默认有一个日期格式化器:![在这里插入图片描述](
https://img-blog.csdnimg.cn/de16e8c47d51400989e3c05bd813b6ae.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_
《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzUzMTU3MTcz,size_16,color_FFFFFF,t_70)
默认使用的日期格式是/方式,如果后台接收到前台的日期格式不是\,那么就会报错:
javaweb项目开发案例 java项目开发案例经典

文章插图
我们可以在配置文件中进行日期格式修改,替换默认的日期格式:spring.mvc.date-format=yyyy-MM-dd
Thymeleaf 日期格式化处理${#dates.format(key)}
${#dates.format(key, ‘yyyy-MM-dd HH:mm:ss’)}

推荐阅读