Spring Boot实战清华版 Web应用开发

 

静态页面开发

 

Spring Boot实战清华版 Web应用开发

Spring Boot实战清华版 Web应用开发

在src/main/resources/static下创建index.html

Spring Boot实战清华版 Web应用开发

 这是一个静态页面。

 

访问greeting

Spring Boot实战清华版 Web应用开发

访问index.html

Spring Boot实战清华版 Web应用开发

 


 

基于Thymeleaf的web应用

 

添加依赖:

Spring Boot实战清华版 Web应用开发

返回的名称就是视图模板的名称:

Spring Boot实战清华版 Web应用开发

 

创建模板src/main/resources/templates:

Spring Boot实战清华版 Web应用开发

使用${name}读取注入model的参数

效果:

Spring Boot实战清华版 Web应用开发

 


 

Thymeleaf知识

 

声明命名空间

Spring Boot实战清华版 Web应用开发

读取配置信息

Spring Boot实战清华版 Web应用开发

简单表达式:

1. 变量表达式${...}

2. 选择变量表达式*{...}

3. 消息表达式#{...}

4. 链接表达式@{...}

5. 分段表达式~{...}

 

字面值:

1. 文本'one text'

2. 数值0, 4, 3.0

3. 布尔值true, false

4. 空 null

5. 标记:one,sometext,other

 

文本操作:

1. 字符拼接 +

2. 文本替换 |the name is ${name} |

 

算术运算:

+ - * / %

 

布尔运算:

and or ! not

 

比较:

>   <    >=   <=   gt   lt  ge  le    ==   !=  eq  ne  

 

条件:

( if ) ? ( then )

( if ) ? ( then ) : ( else ) 

( value ) ?: ( defaultValue )

 

表达式对象:

Spring Boot实战清华版 Web应用开发

辅助对象:

Spring Boot实战清华版 Web应用开发

Thymeleaf可用标记:

Spring Boot实战清华版 Web应用开发

默认为true的标记

Spring Boot实战清华版 Web应用开发

循环迭代:

th:each

其中,index是索引,从0开始

count也是索引,从1开始

size表示元素数量

first返回是否第一个

last返回是否最后一个

even/odd 偶数/奇数

current当前变量

 

switch用法:

Spring Boot实战清华版 Web应用开发

 

thymeleaf片段:

Spring Boot实战清华版 Web应用开发

 使用fragment标记定义片段,

使用insert 、replace、include引用片段:

Spring Boot实战清华版 Web应用开发

 


 

开发Restful应用

 

Spring Boot实战清华版 Web应用开发

 


 

使用Servlet

 

方式一:继承HttpServlet,然后注册为Bean

 

servlet实现:

Spring Boot实战清华版 Web应用开发

注册为Bean:

Spring Boot实战清华版 Web应用开发

 

方式二:使用@WebServlet注解定义,开启@ServletComponentScan扫描

 

使用@WebServlet注解标记Servlet的实现类:

Spring Boot实战清华版 Web应用开发

 

开启@ServletComponentScan:

Spring Boot实战清华版 Web应用开发

 


 

使用Filter

 

使用@WebFilter注解标记过滤器:

Spring Boot实战清华版 Web应用开发

 


 

使用Listener

 

使用@WebListener注解标记监听器(ServletContextListener):

Spring Boot实战清华版 Web应用开发

 使用@WebListener注解标记监听器(HttpSessionListener):

 

Spring Boot实战清华版 Web应用开发

 


 

使用拦截器

 

实现HandlerInterceptor:

Spring Boot实战清华版 Web应用开发

Spring Boot实战清华版 Web应用开发

创建一个配置类:

继承WebMvcConfigurerAdapter,实现addInterceptors方法,添加拦截器:

Spring Boot实战清华版 Web应用开发