Shiro集成Spring

shiro框架-集成spring-集成springboot 一 简介 Apache Shiro 是一个强大且易用的 Java 安全框架 Shiro可以帮我们完成 :认证、授权、加密、会话管理、与 Web 集成、缓存等。 主要功能: Subject(用户):当前的操作用户 获取当前用户Subject sj = SecurityUtils.getSubject() SecurityManager(安全管理器):Shiro的核心,负责与其他组件进行交互,实现 subject 委托的各种功能 ...... 阅读详情

第一步:创建一个Java的Web工程

第二步:导入所需jar包

第三步:配置web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
    <!--配置Spring-->
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:applicationContext.xml</param-value>
    </context-param>
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    <!--配置SpringMvc-->
    <servlet>
        <servlet-name>springmvc</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:spring-servlet.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>springmvc</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
    <!--配置Shiro-->
    <filter>
        <filter-name>shiroFilter</filter-name>
        <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
        <init-param>
            <param-name>targetFilterLifecycle</param-name>
            <param-value>true</param-value>
        </init-param>
    </filter>

    <filter-mapping>
        <filter-name>shiroFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
</web-app>

第四步:配合SpringMvc的Spring-sevlet.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
    <mvc:annotation-driven/>
    <!--配置扫描controller-->
    <context:component-scan base-package="org.peter" use-default-filters="false">
        <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
    </context:component-scan>
</beans>

第五步:配置Spring的applicationContext.xml文件

下面的代码只是配置Shiro,其中还需要一个ehcache.xml的文件,我是Copy的,他在下面的zip的文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

   <!--配置securityManager的bean-->
    <bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager">
        <!--配置Shiro缓存 -->
        <property name="cacheManager" ref="cacheManager"/>
        <!--配置realm(这个非常的重要)-->
        <property name="realm" ref="jdbcRealm"/>
    </bean>
    <!--配置缓存-->
    <bean id="cacheManager" class="org.apache.shiro.cache.ehcache.EhCacheManager">
        <property name="cacheManagerConfigFile" value="classpath:ehcache.xml"/>
    </bean>
    <!--配置Realm-->
    <bean id="jdbcRealm" class="org.peter.realm.MyRealm">
    </bean>
    <!--配置Spring去管理Shiro中的bean的生命周期-->
    <bean id="lifecycleBeanPostProcessor" class="org.apache.shiro.spring.LifecycleBeanPostProcessor"/>

    <!--开启Shiro的注解使用-->
    <bean class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator"
          depends-on="lifecycleBeanPostProcessor"/>
    <bean class="org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor">
        <property name="securityManager" ref="securityManager"/>
    </bean>

    <!--配置页面过滤规则-->
    <!--web.xml中filter-name的名字要和ShiroFilterFactoryBean的id一样,不一样会出错-->
    <bean id="shiroFilter" class="org.apache.shiro.spring.web.ShiroFilterFactoryBean">
        <property name="securityManager" ref="securityManager"/>
        <!--配置登录页面-->
        <property name="loginUrl" value="/Login.jsp"/>
        <!--配置登录成功后的页面-->
        <property name="successUrl" value="/index.jsp"/>
        <!--配置没有获得访问权限的页面-->
        <property name="unauthorizedUrl" value="/s/unauthorized"/>

        <property name="filterChainDefinitions">
            <value>
                <!--anon 表示Login.jsp可以匿名访问-->
                /Login.jsp = anon
                <!--authc表示剩余的页面必须在登录后访问-->
                /** = authc
            </value>
        </property>
    </bean>
</beans>


可以创建一个Controller来做测试,看环境是否Ok

以上五步就是将Spring,SpringMvc,Shiro整合

代码资料:http://download.youkuaiyun.com/detail/strive_peter/9917411


spring-boot集成shiro 阅读详情

相关推荐

Unity游戏开发客户端C#基础

初级Unity客户端开发工程师 面经 之 C#篇

Sea3752的博客 2万+

Shiro - Shiro简介;Shiro与Spring Security区别;Spring Boot集成Shiro

以下引自百度百科Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码和会话管理。使用Shiro的易于理解的API,可以快速、轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程序。三个核心组件:Subject,SecurityManager 和 Realms。...

MinggeQingchun的博客 4万+

人工智能之语言领域 自然语言处理 第六章 情感分析

情感分析(Sentiment Analysis),又称意见挖掘(Opinion Mining),旨在自动识别和提取文本中表达的主观情感、态度或情绪。从用户评论到社交媒体,从产品反馈到政治舆情,情感分析已成为企业决策、品牌监控和人机交互的关键技术。本章将深入介绍情感分析的层级结构、核心技术、主流模型,并通过社交媒体舆情实战案例完整演示分析与可视化流程。层级目标示例词级(Word-level)判断单个词的情感倾向“好” → 正面;“差” → 负面句级(Sentence-level)判断整个句子的情感极性。

咚咚王者的博客 856

Spring集成Shiro

在上一篇文章已经详细介绍了Shiro的简介,以及简单的例子,有兴趣的朋友可以看一下我的上一篇文章 点击观看Shiro入门简介这篇文章主要讲解spirng怎么集成Shiro。 在集成之前在这里在先介绍下过滤器吧 securityManager:这个属性是必须的。 loginUrl :没有登录的用户请求需要登录的页面时自动跳转到登录页面,不是必须的属性,不输入地址的话会自动寻找项目web...

Yang_Hui_Liang的博客 239

别再傻傻分不清!用R语言5分钟搞定RR、AR、OR的计算与解读(附代码)

本文通过R语言实战演示,详细讲解了RR(相对风险)、AR(绝对风险)和OR(比值比)的计算方法与科学解读。提供完整的代码示例和可视化技巧,帮助医学研究者快速掌握这些核心流行病学指标的应用与常见陷阱规避。

weixin_42526015的博客 265

别再死磕公式了!用Python+NumPy手把手实现机器人逆运动学数值求解(附避坑指南)

本文详细介绍了如何使用Python和NumPy实现机器人逆运动学(Inverse Kinematics, IK)的数值求解方法,包括牛顿-拉弗森法、雅可比矩阵计算及奇异位形处理。通过实战代码和避坑指南,帮助开发者快速掌握现代机器人学中的核心算法,提升工程实践能力。

weixin_30687051的博客 127

Spring集成shiro框架

1导入jar包 2在web.xml中配置shiroFilter <!-- Spring与shiro集成:需要定义一个shiro过滤器(这是一个代理过滤器,它会到spring的配置中找一个名称相同的真实过滤器) --> <filter> <filter-name...

chenghe5407的博客 127

Spec-Kit实战:用‘规范驱动开发’重构一个老旧Node.js项目(避坑指南)

本文详细介绍了如何使用Spec-Kit工具通过‘规范驱动开发’(SDD)重构老旧Node.js项目。从逆向工程提取规范到增量改造策略,再到避免典型陷阱,提供了实战指南和避坑技巧,帮助开发者高效实现架构现代化,显著提升代码质量和维护效率。

weixin_42525582的博客 554

Shiro 入门教程 - Shiro Spring 集成

作者简介:大家好,我是哥,前中兴通讯、美团架构师,现某互联网公司联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!

smart_an的专栏 866

【WRF-GHG 教程第一期】概述(Overview)

概述(Overview)

WW、forever的博客 509

链接文件及功能安全:S32K3如何将FLASH驱动放到RAM里面、RAM如何实现软件复位数据不丢失操作。

在通过RTD的SDK也好MCAL也好,始终存在一个问题,生成的代码除了看门狗模块,默认都是放在flash里面,按照正常逻辑来看没啥大的问题,思考一个问题:Flash放在0x100的位置,但是此时我们要操作0x100怎么办?那肯定不允许啊,但是将flash的驱动放在RAM里面就可以避免这个问题的产生。Flash的特性:PF0能操作PF1,当然PF1也能操作PF0的,以此类推,只要不操作自身,想怎么玩都可以。这也是一个物理特性吧。

梦想技术家 2310

spring集成shiro

集成Spring 需要有Spring的环境 集成Spring的核心就是把框架的核心类(SecurityManager,Subject,Realm)交给Spring管理! 1 导包 <!-- shiro(权限框架)的支持包 --> <dependency> <groupId>org.apache.shiro</groupId> ...

一步一脚印的博客 229

OpenMM | PDBFixer 用于蛋白质预处理

PDBFixer 用于蛋白质预处理

DrugOne 3005

shiro与spring的集成

一、认识 Spring中的security:重量级的安全框架、是细粒度的、功能很多 Apache中的Shiro:轻量级安全框架、是粗粒度,功能没有security多,但是也足够用了 二、shiro的四大基石 身份验证、授权、密码学、会话管理 三、shiro的架构 Submit:当前用户 Shiro securityManager:权限管理器、shiro的核心类、所有功能的核...

avmfw92703的博客 187

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

spring boot 集成 shiro

spring boot 集成 shiro 就用 org.apache.shiro->shiro-spring-boot-web-starter

小徕虫的博客 3087

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

【Shiro】Spring集成shiro

【Shiro】Spring集成shiro1. 导入依赖2. 配置applicationContext.xml3. 配置web.xml 1. 导入依赖 <!-- 其他依赖和web集成中 ⼀致 ,此处省略--> <!-- 新增⼀个依赖 ⽤于在⼯⼚中⽣产 ShiroFilter--> <!-- 会传递导⼊shiro-core 和 shiro-web --> <dependency> <groupId>org.apache.shiro</gr

来日浅谈的博客 490

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Shiro --- Spring集成Shiro

一、pom.xml引入Shiro 可以引入Apache Shiro所有的包 org.apache.shiro shiro-all ${shiro.version} 或者是根据项目需求引入需要的jar org.apache.shiro shiro-core ${shiro.version} org.apache.shiro shiro-

__静禅__ 691

Spring集成Shiro权限框架

(一)导包 <!-- shiro的支持包 --> <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-all</artifactId> <version>1.4.0</version> &...

布谷鸟 264

shiro 在spring框架中集成shiro

spring版本5.0.12 shiro版本 1.3.2 1、web.xml &lt;!--配置shiro--&gt; &lt;filter&gt; &lt;filter-name&gt;shiroFilter&lt;/filter-name&gt; &lt;filter-class&gt;org.springframework.web.filter.D...

imxlw00的专栏 537

Shiro集成到Spring

为什么要集成Spring? 我们的项目基本都是通过Spring来管理bean的,如果要想使用Shiro,那就要把shiro集成到Spring。集成Spring的核心就是把框架的核心类(SecurityManager,Subject,Realm)交给Spring管理 集成 第一步- -在自己的项目中导入相关的jar包 <!-- shiro的支持包 --> <dependency...

风华流沙君莫笑的博客 257

Spring Boot集成Shiro认证

首先,我们需要创建一个Spring Boot项目,并添加必要的依赖。在pom.xml创建一个自定义的Realm类MyRealm@Autowired@Override@Overridethrow new UnknownAccountException("用户不存在");

lrh35的博客 1949

shiro判断session失效_Shiro简介及与spring集成

1、权限基础两个基本的概念——安全实体:就是被权限系统保护的对象,比如工资数据。——权限:就是需要被校验的行为,比如查看、修改等。分配权限:——把对某些安全实体的某些权限分配给某些人员。——是向数据库里面添加数据、或是维护数据的过程权限验证(权限匹配):——判断某个人员或程序对某个安全实体是否拥有某个或某些权限。——从数据库中获取相应数据进行匹配的过程。权限的继承性:如果多个安全实体存在包含关系,...

weixin_35958783的博客 1250
上一篇: 初识Shiro
下一篇: Shiro实现认证
@夫子慧
博客等级 码龄9年 9粉丝 55原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值