简易的springboot web项目介绍

image.png

此项目主要分如下几个部分:
1.entity
定义基本业务实体


image.png

定义基本属性和相关get set toString方法,
无参构造、 有参构造都不能少,
@Component负责把class注入到spring容器中。

2.controller
定义所有请求路由,包含响应逻辑


image.png

@Controller注解负责告诉框架此class是一个路由组件
@requestMapping负责声路由路径
login的参数可以自定义多个,有的是从请求中获取(username,password),有的是从spring框架中的工具类(odelMap),用于给模板取值,
有的是java的api(session),用于保存登陆信息。

3.repository
用于和数据库打交道,定义基本的数据增删改查功能


image.png

先在接口中声明方法,然后再实现它


image.png

这里没有使用数据库,用的一个list模拟列表数据,先声明一个集合,然后在静态代码块中初始化。
@Repository是必须的,用来告知spring框架此class为repository组件

4.intercept
定义拦截器,做一些通用的校验类功能,如登陆校验等


image.png

从写preHandle方法,返回true表示通过,false表示不通过,然后就是写业务逻辑,如果session中获取登陆信息正常,校验通过,否则返回错误信息,转发登录页

5.config
通用的配置类,可以配置默认地址,路由拦截器等


image.png

@Configuration是必须的表示此class是一个配置类
实现WebMvcConfigurer用来复写框架的默认配置,默认“/”会去请求index.html模板,这里改写成自定义的模板。
添加的拦截器可以配置监控的路由格式,这里监控所有路由“/”,同时排除了根路径,登陆,静态资源的请求,一个“”代表一级目录的所有文件,“/img/*”表示/img的子目录所有文件和再下一级目录的文件

6.resources
静态资源,包括html模板,js文件css文件img文件等
路由请求html模板有顺序:先从static中找,然后再从templates中找。

image.png

此为thymeleaf模板,声明xmlns:th="http://www.thymeleaf.org"是必须的。

你可能感兴趣的:(简易的springboot web项目介绍)