[关闭]
@chenbinghua 2018-08-13T16:14:07.000000Z 字数 1588 阅读 984

SpringBoot(第篇):整合Shiro(一)无Shiro的SpringBoot

SpringBoot


参考http://412887952-qq-com.iteye.com/blog/2299732

一个简单的需求

假如一个网站有两个网页,login.html,index.html。我们希望是如果直接访问index页面,如果没有登录的话,直接跳转到login进行登录。
这其实是很多网站都有的一个登陆拦截的需求。

我们先搭建SpringBoot框架,对外能提供login.html,index.html这两个网页的访问。

引入依赖

  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-web</artifactId>
  4. </dependency>
  5. <dependency>
  6. <groupId>org.springframework.boot</groupId>
  7. <artifactId>spring-boot-starter-thymeleaf</artifactId>
  8. </dependency>

编写网页文件

在src/main/resouces/templates编写login.html,index.html两个文件
index.html

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <h3>这是index文件</h3>
  9. </body>
  10. </html>

login.html

  1. <!DOCTYPE html>
  2. <html xmlns:th="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <title>Insert title here</title>
  6. </head>
  7. <body>
  8. 错误信息:<h4 th:text="${msg}"></h4>
  9. <form action="" method="post">
  10. <p>账号:<input type="text" name="username" value="admin"/></p>
  11. <p>密码:<input type="text" name="password" value="123456"/></p>
  12. <p><input type="submit" value="登录"/></p>
  13. </form>
  14. </body>

编写HelloController控制器

  1. package com.chen.springbootshiro.controller;
  2. import org.springframework.stereotype.Controller;
  3. import org.springframework.web.bind.annotation.RequestMapping;
  4. @Controller
  5. public class HelloController {
  6. @RequestMapping("/index")
  7. public String index(){
  8. return "index";
  9. }
  10. @RequestMapping("/login")
  11. public String login(){
  12. return "login";
  13. }
  14. }

测试

运行springboot的配置类
在浏览器输入http://localhost:8080/index,http://localhost:8080/login,都能访问到对应的页面。
至此,我们第一步的代码就完成了,但是我们还没实现文章开头的那个简单的需求,我们希望是如果直接访问index页面,如果没有登录的话,直接跳转到login进行登录。

下一篇文章,我们将在当前代码集成shiro,实现上述功能。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注