学科分类
目录
Spring Boot开发

基础环境搭建

为了更好的使用Spring Boot整合实现MVC Security安全管理功能,体现Authentication(认证)和Authorization(授权)功能的实现,后续将会结合一个访问电影列表和详情的案例进行演示说明,这里先对案例的基础环境进行搭建。

(1)创建Spring Boot项目。使用Spring Initializr方式创建一个名为chapter07的Spring Boot项目,在Dependencies依赖选择中选择Web模块中的Web依赖以及Template Engines模块中的Thymeleaf依赖,然后根据提示完成项目创建。其中,创建项目时的选择依赖如图1所示。

图1 Spring Boot项目依赖选择

(2)引入页面Html资源文件。在项目的resources下templates目录中,引入案例所需的资源文件,引入资源文件后具体效果如图2所示。

图2 Spring Boot项目引入资源文件结构图

图2中,index.html文件是项目首页面,common和vip文件夹中分别对应的是普通用户和VIP用户可访问的页面。其中,chapter07项目首页index.html的内容如文件1所示。

文件7-1 index.html

 1    <!DOCTYPE html>
 2    <html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">
 3    <head>
 4    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 5    <title>影视直播厅</title>
 6    </head>
 7    <body>
 8    <h1 align="center">欢迎进入电影网站首页</h1>
 9    <hr>
 10        <h3>普通电影</h3>
 11        <ul>
 12            <li><a th:href="@{/detail/common/1}">我不是药神</a></li>
 13            <li><a th:href="@{/detail/common/2}">夏洛特烦恼</a></li>
 14        </ul>
 15        <h3>VIP专享</h3>
 16        <ul>
 17            <li><a th:href="@{/detail/vip/1}">速度与激情</a></li>
 18            <li><a th:href="@{/detail/vip/2}">猩球崛起</a></li>
 19        </ul>
 20    </body>
 21    </html>

文件1中,index.html首页面中通过标签分类展示了一些普通电影和VIP电影,并且这些电影都通过<a>标签链接到了具体的影片详情路径(例如/detail/common/1)。

在templates文件夹下,common和vip文件夹中引入的HTML文件就是对应电影的简介信息,这里以common文件夹下的1.html文件为例,内容如文件2所示。

文件2 1.html

 1    <!DOCTYPE html>
 2    <html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">
 3    <head>
 4    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 5    <title>影片详情</title>
 6    </head>
 7    <body>
 8        <a th:href="@{/}">返回</a>
 9        <h1>我不是药神</h1>
 10        <p style="width: 550px">简介:根据真实社会事件改编,一位不速之客的意外到访,
 11         打破了神油店老板程勇(徐峥 饰)的平凡人生,他从一个交不起房租的男性保健品商贩,
 12        一跃成为印度仿制药“格列宁”的独家代理商。收获巨额利润的他,生活剧烈变化,被病患们冠以“药神”
 13        的称号。但是,一场关于救赎的拉锯战也在波涛暗涌中慢慢展开……</p>
 14    </body>
 15    </html>

文件2中,第8行代码中设置有一个<a>标签,并配置了属性th:href="@{/}",单击此属性配置的链接会返回项目首页。

(3)编写Web控制层。在chapter07项目中创建名为com.itheima.controller的包,并在该包下创建一个用于页面请求处理的控制类,内容如文件3所示。

文件3 FilmeController.java

 1    import org.springframework.stereotype.Controller;
 2    import org.springframework.web.bind.annotation.GetMapping;
 3    import org.springframework.web.bind.annotation.PathVariable;
 4    @Controller
 5    public class FilmeController {
 6        // 影片详情页
 7        @GetMapping("/detail/{type}/{path}")
 8        public String toDetail(@PathVariable("type")String type, 
 9                                    @PathVariable("path")String path) {
 10            return "detail/"+type+"/"+path;
 11        }
 12    }

在文件3中,只编写了一个向影片详情页面请求跳转的方法toDetail(),该文件中没有涉及到用户登录提交以及退出操作的控制方法。

至此,使用Spring Boot整合Spring MVC框架实现了一个传统且简单的Web项目,目前项目没有引入任何的安全管理依赖,也没有进行任何安全配置,项目启动成功后,可以访问首页,单击影片进入详情详情页。具体效果,读者可以自行启动项目访问查看。

点击此处
隐藏目录