Shiro登录的使用以及原理(二)----Filter过滤器原理和使用

在第一篇中进行的简单的介绍了Shiro的登录的实现https://blog.csdn.net/qq_38340127/article/details/109866392,因为主要为了后续的Spring结合Shiro,而Shiro通过Filer实现的,所以此篇主要讲Filter原理和使用。

一 Filter 过滤器

官方文档中的描述是:

A filter is an object that performs filtering tasks on either the request to a resource (a servlet or static content), or on the response from a resource, or both. 

(过滤器是一个对资源的请求(servlet或静态内容)或来自资源的响应执行筛选任务,或同时执行这两个任务的对象)

那么也就是说

在web项目中Filer的主要功能就是对用户请求做预处理,接着将请求交给servlet处理并响应,然后Filter在对该相应进行后置处理。

web浏览器-------->web服务器--------->Filter处理-------->servlet处理--↓

web浏览器<-------web服务器<---------Filter处理<-------------------------↓                    

1.1 Filter使用简介

Filter的官方文档:https://tomcat.apache.org/tomcat-5.5-doc/servletapi/

//该接口主要三大功能
public interface Filter {
    //初始化 实现类会继承接口中的default方法 接口也能通过default来实现方法了
    default void init(FilterConfig filterConfig) throws ServletException {
    }
    
    //执行过滤
    void doFilter(ServletRequest var1, ServletResponse var2, FilterChain var3) throws IOException, ServletException;

    //销毁
    default void destroy() {
    }
}
Method Summary
 void destroy() 
          Called by the web container to indicate to a filter that it is being t
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Security、Shiro和Sa-Token都是用于身份验证和访问控制的安全框架,但它们有不同的特点和核心架构。 1. Spring Security: - 核心架构:Spring Security是基于过滤器链(Filter Chain)的安全框架,通过一系列的过滤器来对请求进行安全验证和访问控制。 - 特点:Spring Security提供了全面的安全解决方案,包括身份验证、授权、记住我等功能。它与Spring框架无缝集成,并且具有灵活性和可扩展性。 - 使用示例:在Spring Boot项目中,您可以通过添加Spring Security的依赖并配置相关的安全规则来实现身份验证和授权功能。 2. Shiro: - 核心架构:Shiro是一个轻量级的Java安全框架,使用一组过滤器和拦截器来处理身份验证和授权。 - 特点:Shiro提供了简单易用的API,可以轻松地实现身份验证、授权、加密等功能。它具有灵活性和可扩展性,并且可以与任何Java应用程序集成。 - 使用示例:在Java应用程序中,您可以使用Shiro的API来实现身份验证和授权。配置Shiro的INI文件或编程方式来定义安全规则。 3. Sa-Token: - 核心架构:Sa-Token是一个基于Token的轻量级Java安全框架,使用Token进行身份验证和授权。 - 特点:Sa-Token具有简单易用、高性能和低侵入性的特点。它使用Token来管理用户身份,支持多种Token生成和存储方式,并提供了丰富的权限控制功能。 - 使用示例:在Java应用程序中,您可以使用Sa-Token的API来生成和验证Token,并通过注解或编程方式定义访问控制规则。 总结来说,Spring Security是一个全面的安全框架,Shiro是一个灵活易用的安全框架,而Sa-Token是一个基于Token的轻量级安全框架。您可以根据项目需求和个人偏好选择适合的框架进行使用。具体的使用方法和示例可以参考它们的官方文档或相关教程。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值