SpringBoot與Shiro整合-許可權管理實戰視訊筆記(之一)
本文內容大部分來自黑馬視訊的SpringBoot與Shiro整合-許可權管理實戰視訊,在此記錄為個人學習筆記。
可按步驟操作,無法實操的實戰blog都是耍流氓。
一、搭建SpringBoot開發環境
1. 安裝好開發軟體和Maven等
本文用的是MyEclipse 2017 CI和Maven 3.5.3。
3. 將這個Maven專案匯入MyEclipse中
匯入過程中出現一個報錯資訊:
點了Finish,檢視pom.xml檔案,報錯如下:
No marketplace entries found to handle Connector org.eclipse .m2e.jdt.JarLifecycleMapping in Eclipse.
神奇的解決辦法:重啟MyEclipse,Maven->Update Project
4. pom.xml檔案配置說明
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" >
<modelVersion>4.0.0</modelVersion>
<groupId>com.fukaiit</groupId>
<artifactId>spring-shiro</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>spring-shiro</name>
<description >Demo project for Spring Boot</description>
<!-- 繼承Spring Boot的預設父工程 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.4.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<!-- 修改引數 -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<!-- jdk的編譯版本,修改之後需要Update Project -->
<java.version>1.8</java.version>
</properties>
<!-- 匯入依賴 -->
<dependencies>
<!-- 匯入thymeleaf依賴 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<!-- 匯入Web支援:Spring web開發支援,servlet相關程式等 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
5. 編寫測試Controller
package com.fukaiit.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class UserController {
@RequestMapping("/hello")
@ResponseBody
public String hello(){
return "OK";
}
}
6. 啟動spring boot啟動類
package com.fukaiit.springshiro;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* Spring Boot啟動類
* @author Administrator
*
*/
@SpringBootApplication
public class SpringShiroApplication {
public static void main(String[] args) {
SpringApplication.run(SpringShiroApplication.class, args);
}
}
又報錯了:Whitelabel Error Page
錯誤原因:程式只加載Application.java所在包及其子包下的內容(https://www.cnblogs.com/JealousGirl/p/whitelabel.html)。
而我的專案啟動類所在的包是com.fukaiit.springshiro,將其修改為com.fukaiit。
二、使用Thymeleaf頁面模板
1. 匯入thymeleaf依賴
<!-- 匯入thymeleaf依賴 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
2. 在UserController中編寫測試thymeleaf的方法(testThymeleaf)
@RequestMapping("/testThymeleaf")
public String testThymeleaf(Model model) {
model.addAttribute("name","fukaiit");
return "testThymeleaf";
}
3. 在resources/templates資料夾下新建testThymeleaf.html檔案
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>testThymeleaf頁面</title>
</head>
<body>
<h1 th:text="${name}"></h1>
</body>
</html>
Tips:
1.<html xmlns:th="http://www.thymeleaf.org">
可寫可不寫,不影響執行,關係到編輯器中是否提示無法識別th:開頭的標籤屬性
2. 在thymeleaf 3.0之前,每個標籤必須正確的閉合,否則會提示Whitelabel Error Page錯誤
3. 修改thymeleaf版本的方法:
在pom.xml中配置如下資訊:
<properties>
<thymeleaf.version>3.0.2.RELEASE</thymeleaf.version>
<thymeleaf-layout-dialect.version>2.0.4</thymeleaf-layout-dialect.version>
</properties>
相關推薦
SpringBoot與Shiro整合-許可權管理實戰視訊筆記(之一)
本文內容大部分來自黑馬視訊的SpringBoot與Shiro整合-許可權管理實戰視訊,在此記錄為個人學習筆記。 可按步驟操作,無法實操的實戰blog都是耍流氓。 一、搭建SpringBoot開發環境 1. 安裝好開發軟體和Mave
SpringBoot與Shiro整合-許可權管理實戰視訊筆記(之三)
本文內容大部分來自黑馬視訊的SpringBoot與Shiro整合-許可權管理實戰視訊,在此記錄為個人學習筆記。 可按步驟操作,無法實操的實戰blog都是耍流氓。 七、Shiro授權-使用Shiro過濾器實現授權頁面攔截 1. 在S
SpringBoot與Shiro整合許可權管理實戰
SpringBoot與Shiro整合許可權管理實戰 作者 : Stanley 羅昊 【轉載請註明出處和署名,謝謝!】 *觀看本文章需要有一定SpringBoot整合經驗* Shiro框架簡介 Apache Shiro是一個強大且易用的Java安全框架,執行身份驗證、授權、密碼學和會話管理。使用Shiro的易於
SpringBoot與Shiro整合
一、資料庫設計 這裡主要涉及到五張表:使用者表,角色表(使用者所擁有的角色),許可權表(角色所涉及到的許可權),使用者-角色表(使用者和角色是多對多的),角色-許可權表(角色和許可權是多對多的).表結構建立的sql語句如下: CREATE TABLE `module` (
SpringBoot+mybatis+Shiro+redis許可權管理系統原始碼
演示地址: http://111.230.157.133/login 技術選型 後端 基礎框架:Spring Boot 2.0.4.RELEASE 持久層框架:Mybatis 3.4.5 安全框架:Apache Shiro 1.4.0 (店鋪裡面有 Spring Se
SpringBoot&Shiro實現許可權管理
SpringBoot&Shiro實現許可權管理 引言 相信大家前來看這篇文章的時候,是有SpringBoot和Shiro基礎的,所以本文只介紹整合的步驟,如果哪裡寫的不好,懇請大家能指出錯誤,謝謝!依賴以及一些配置檔案請在原始碼裡參考,請參見 https://github.com/Slags/spri
手把手教你實現Java許可權管理系統 前端篇(十三):頁面許可權控制
許可權控制方案 既然是後臺許可權管理系統,當然少不了許可權控制啦,至於許可權控制,前端方面當然就是對頁面資源的訪問和操作控制啦。 前端資源許可權主要又分為兩個部分,即導航選單的檢視許可權和頁面增刪改操作按鈕的操作許可權。 我們的設計把頁面導航選單和頁面操作按鈕統一儲存在選單資料庫表中,選單表中包含以下許可權關
Vue2.0 + ElementUI 手寫許可權管理系統後臺模板(四)——元件結尾
i18n國際化多語言翻譯使用 框架採用vue-i18n版本 8.4.0, 使用npm安裝 新建資料夾src/i18n,目錄如下 i18n.js //i18n.js import Vue from 'vue' import locale from 'element-ui/lib/loc
RBAC許可權管理系統實現思路(一)
RBAC(Role-Based Access Contro) 是基於角色的許可權訪問控制,系統根據登入使用者的角色不同,從而給予不同的系統訪問許可權,角色的許可權隨角色創立時進行分配。 首先,許可權控制很多系統中都需要,但是不同的系統對於許可權的敏感程度不同,
《Python資料分析與挖掘實戰》筆記(一):資料探勘基礎
一、資料探勘的基本任務 利用分類與預測、聚類分析、關聯規則、時序模式、偏差檢測、智慧推薦等方法,幫助企業提取資料中蘊含的商業價值,提升企業的競爭力。 二、資料探勘建模過程 定義挖掘目標:任務目標和完
許可權管理之Spring Security(一)
本文只是我對security的一些簡單看法,如有錯誤,敬請指正。 從最簡單的demo說起 一個最簡單的springboot+security的demo到底可以簡單到什麼程度?請看以下程式碼: null 如果說maven引入jar包不算程式碼的話,那麼最簡單的啟用
Laravel 實戰視訊教程(精品)
課程簡介: Laravel強大之處不僅僅在於它給你提供了一系列腳手架,比如超級好用的ORM,基於Carbon的時間處理,以及檔案儲存等等功能。更是因為它的設計,思想及可擴充套件性。所以在國外Laravel儼然已經成為最流行的PHP框架。然而為什麼國內使用卻不是很普遍那,
Python資料分析與挖掘實戰學習筆記(一)
資料預處理1. 資料清洗(1)缺失值處理三種方法:刪除記錄、資料插補、不處理常見插補方法:均值/中位數/眾數插補、使用固定值/期望值、迴歸方法(根據已有資料和其他與其有關變數等建立擬合模型來預測)、插值法(利用已知點建立合適的插值函式,如拉格朗日函式)我們以餐廳銷量資
Python 下字串的連線、簡單替換與unicode字串- 千月的python linux 系統管理指南學習筆記(12)
Python 下字串的連線、簡單替換與unicode字串 繼續上一章的內容,看一看字串的連線和替換 字串的連線 join() 將多個字串連線起來的”膠水“ 字元物件.join(字串或者列表) #連線字串,或者與列表裡的字元分別連線。 光是將2個字串相連。其實意義不大,一個
《Python資料分析與挖掘實戰》筆記(五):資料建模
分類與預測 主要分類與預測演算法 迴歸分析 確定預測值與其他變數關係。線性、非線性、Logistic、嶺迴歸、主成分迴歸等 決策樹 自頂向下分類 人工神經網路 用神經網路表示輸入與輸出之間的關係 貝葉斯網路 又稱信度網路,是不確定知識表達和推理領域最有效的理論模
Python 下字串的提取、分割與刪除- 千月的python linux 系統管理指南學習筆記(11)
Python 下字串的提取、分割與刪除 對於文字來講,提取、分割和刪除是我們用的較多的操作。 文字我們可以看成是字串物件。首先說到的是 in 和 not in操作。 字串的提取 in 和 not i
iOS底層原理班實戰視訊教程(上)-李明傑-專題視訊課程
iOS底層原理班實戰視訊教程(上)—448人已學習 課程介紹 iOS底層開發班實戰視訊培訓課程:APP逆向實戰、加殼脫殼、資料安全、編譯原理、iOS底層開發實現、iOS底層開發機制 iOS進階課程,實用技術不斷的更新和升級,更快幫助職場人士在開發領域脫穎而出。
spring與redis整合(一)--採用原生的jedis(ShardedJedisPool)
一、簡介 1、jedis redis是記憶體資料庫,常被用作快取。jedis是java語言的redis客戶端。本文將基於原生的jedis,對spring與redis整合開發進行介紹。 2、ShardedJedisPool ShardedJedisPool是基於一致性雜湊演算
Maven實戰讀書筆記(三):Maven依賴
aging com cti 無效 type -c maven 傳遞依賴 歸類 3.1 依賴的配置 一個依賴聲明可以包含下面元素: <dependencies> <dependency> <groupId></
《機器學習實戰》筆記(三):樸素貝葉斯
4.1 基於貝葉斯決策理論的分類方法 樸素貝葉斯是貝葉斯決策理論的一部分,貝葉斯決策理論的的核心思想,即選擇具有最高概率的決策。若p1(x,y)和p2(x,y)分別代表資料點(x,y)屬於類別1,2的概率,則判斷新資料點(x,y)屬於哪一類別的規則是: 4.3 使用條件概率來分類