1.首先是導入標籤庫java
<%@taglib prefix="shiro" uri="http://shiro.apache.org/tags" %>
1.1 hasrole 標籤 web
<shiro:hasRole name="admin"> apache
用戶[<shiro:principal/>]擁有角色admin<br/> api
</shiro:hasRole> app
1.2 hasPermission標籤jsp
<shiro:hasPermission name="user:create"> maven
用戶[<shiro:principal/>]擁有權限user:create<br/> 測試
</shiro:hasPermission> 網站
進行測試ui
先使用jack登陸 由於jack沒有user的權限 登陸後觀察一下效果
而後在使用 zuoyan這個帳號登陸,zuoyan的角色是admin 因此擁有對user:* 的全部操做權限
展現一下 success.jsp的頁面源碼
這樣就成功的使用了 shiro的jsp標籤
同理進行測試hasrole
先使用jack 123登陸,由於沒有管理員權限,正常應該不會顯示
查看一下效果
在使用zuoyan登陸一下查看效果
這個權限正確!
(我的感受這個shiro jsp標籤挺有用的 能夠進行權限認證,在網站的後臺能夠用這個控制 不一樣的管理員)
最後展現一下 pom.xml文件須要的jar包
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.zuoyan.shiro</groupId> <artifactId>ShiroWeb</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>ShiroWeb Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <!-- 添加servlet支持 --> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> </dependency> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>javax.servlet.jsp-api</artifactId> <version>2.3.1</version> </dependency> <!-- 添加jstl支持 --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> <!-- 添加日誌支持 --> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.2</version> </dependency> <!-- 添加shiro支持 --> <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-core</artifactId> <version>1.2.4</version> </dependency> <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-web</artifactId> <version>1.2.4</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.12</version> </dependency> </dependencies> <build> <finalName>ShiroWeb</finalName> </build> </project>