- shiro入门实战笔记(1)--理论篇
y-yg
Shiroshiro入门javaapache权限控制
从这篇文章开始,将学习Apacheshiro的相关内容。由于博主也是刚刚开始学习相关的基本内容,网上已经有系列文章讲解shiro,这里博主推荐一个:开涛的博客,《跟我学shiro》。博主也是跟着这个系列的文章学习shiro的相关内容。以下的文章,各位读者请权当是学习笔记,因此对于想了解更多内容的读者,请移步到上面的文章中,在参考资料里,博主也会附上链接。第一篇,我们参考官方文档,以及上面文章的翻译
- Shiro源码分析系列:01.shiro初始化
城南码农
关于shiro的架构和组件,可以参考开涛跟我学Shiro系列。Shiro初始化初始化DelegatingFilterProxy:@BeanpublicFilterRegistrationBeangetShiroFilter(){FilterRegistrationBeanregistrationBean=newFilterRegistrationBean();//创建FactoryBean的代理对
- Shiro默认拦截器
晚歌歌
跟我学ShiroURL拦截spring集成shiro的时候配置shiroFilter即org.apache.shiro.spring.web.ShiroFilterFactoryBean的URL拦截器链filterChainDefinitions时候,需要参考以下拦截器。Shiro内置了很多默认的拦截器,比如身份验证、授权等相关的。默认拦截器可以参考org.apache.shiro.web.fil
- 《跟我学Shiro》学习笔记 第六章:与Web集成
卑微幻想家
Shiro提供了对Web集成的支持,其通过一个ShiroFilter入口来拦截需要安全控制的URL,然后进行相应的控制,ShiroFilter类似于如Strut2/SpringMVC这种web框架的前端控制器,其是安全控制的入口点,其负责读取配置(如ini配置文件),然后判断URL是否需要登录/权限等工作。6.1准备环境创建webapp应用我们利用maven构建我们的项目,使用jetty-mave
- Shiro13-Shiro学习资料
我相信你爱过gg
《跟我学Shiro》视频教程sql脚本shiro使用方法shiro安全框架--最好的中文配置文档shiro入门学习Apache_Shiro_reference(中文版)
- 推荐一些优秀的工具、文章、博客
宋文超super
推荐java
在线Cron表达式生成器在线工具-程序员的工具箱优秀文章和博客创业互联网公司如何搭建自己的技术框架[zejian的博客]zejian微服务实战单点登录原理与简单实现网站架构经验随笔支付系统架构Spring整合JMS跟我学Shiro目录贴跟我学SpringMVC目录汇总贴Elasticsearch权威指南(中文版)springMVC对简单对象、Set、List、Map的数据绑定和常见问题.如何细粒度
- 第十三章 RememberMe——《跟我学Shiro》
大马猴JAVA学习
Shiro
目录贴:跟我学Shiro目录贴Shiro提供了记住我(RememberMe)的功能,比如访问如淘宝等一些网站时,关闭了浏览器下次再打开时还是能记住你是谁,下次访问时无需再登录即可访问,基本流程如下:1、首先在登录页面选中RememberMe然后登录成功;如果是浏览器登录,一般会把RememberMe的Cookie写到客户端并保存下来;2、关闭浏览器再重新打开;会发现浏览器还是记住你的;3、访问一般
- Failed to load class “org.slf4j.impl.StaticLoggerBinder“.解决
曲青笙
下载的是Shiro,跟我学Shiro,运行时出现的问题SLF4J:Failedtoloadclass"org.slf4j.impl.StaticLoggerBinder".SLF4J:Defaultingtono-operation(NOP)loggerimplementationSLF4J:Seehttp://www.slf4j.org/codes.html#StaticLoggerBinder
- 跟我学Shiro目录贴
yucongyuqian
webjava基础
http://jinnianshilongnian.iteye.com/blog/2018398?page=3#comments
- Shiro源码分析----认证流程
子夜的魂
Shiro
由于本文是基于源码分析Shiro认证流程,所以假设阅读者对Shiro已经有一定的了解,如果对Shiro还不大了解的话,推荐一下博文:跟我学Shiro目录贴ApacheShiro作为一个优秀的权限框架,其最重要的两项工作:其一是认证,即解决登录的用户的身份是否合法;其二是用户登录后有什么样的权限。本文将基于Shiro源码来剖析Shiro的认证流程,只有深层次的理解Shiro认证流程,认证过程中各个组
- 第七章 与Web集成——《跟我学Shiro》
jinnianshilongnian
跟我学Shiro
目录贴:跟我学Shiro目录贴Shiro提供了与Web集成的支持,其通过一个ShiroFilter入口来拦截需要安全控制的URL,然后进行相应的控制,ShiroFilter类似于如Strut2/SpringMVC这种web框架的前端控制器,其是安全控制的入口点,其负责读取配置(如ini配置文件),然后判断URL是否需要登录/权限等工作。7.1准备环境1、创建webapp应用此处我们使用了jetty
- 第二十章 无状态Web应用集成——《跟我学Shiro》
jinnianshilongnian
跟我学Shiro
目录贴:跟我学Shiro目录贴在一些环境中,可能需要把Web应用做成无状态的,即服务器端无状态,就是说服务器端不会存储像会话这种东西,而是每次请求时带上相应的用户名进行登录。如一些REST风格的API,如果不使用OAuth2协议,就可以使用如REST+HMAC认证进行访问。HMAC(Hash-basedMessageAuthenticationCode):基于散列的消息认证码,使用一个密钥和一个消
- [资源] 优秀博客和常用插件
架构探险之道
优秀文章和博客创业互联网公司如何搭建自己的技术框架微服务实战单点登录原理与简单实现ITeye论坛关于权限控制的讨论RBAC新解:基于资源的权限管理(Resource-BasedAccessControl)网站架构经验随笔支付系统架构Spring整合JMS跟我学Shiro目录贴跟我学SpringMVC目录汇总贴跟我学spring3目录贴跟我学OpenResty(Nginx+Lua)开发目录贴Redi
- 聊聊高并发系统之HTTP缓存
钱曙光
声明:本位来自京东张开涛的微信公众号(kaitao-1234567),授权CSDN转载,如需转载请联系作者。作者:张开涛,京东资深Java工程师,2014年加入京东,主要负责商品详情页、详情页统一服务架构与开发工作,设计并开发了多个亿级访问量系统。工作之余喜欢写技术博客,有《跟我学Spring》、《跟我学SpringMVC》、《跟我学Shiro》、《跟我学Nginx+Lua开发》等系列教程,目前博
- 推荐一些优秀的工具、文章、博客
宋文超super
推荐java
在线Cron表达式生成器在线工具-程序员的工具箱优秀文章和博客创业互联网公司如何搭建自己的技术框架[zejian的博客]zejian微服务实战单点登录原理与简单实现网站架构经验随笔支付系统架构Spring整合JMS跟我学Shiro目录贴跟我学SpringMVC目录汇总贴Elasticsearch权威指南(中文版)springMVC对简单对象、Set、List、Map的数据绑定和常见问题.如何细粒度
- Apache Shiro的使用
E_k_in
其他
本文将讲述在Spring+SpringMvc项目中使用Shiro来保障系统的安全。关于shiro理论性的东西本文不深入讲解,重点在于在Spring项目中配置和使用shiro.关于理论性的东西,可以看看张开涛的《跟我学Shiro》。话不多说,先来看看如何配置Shiro。1在web.xml中添加一个ShiroFiltershiroFilterorg.springframework.web.filter
- 为什么Shiro的rememberMe设置了没作用?
Jintao_Wang
shiro
首先,在这里要感谢涛哥分享的关于shiro系列的博客《跟我学Shiro》。其次,就是在RememberMe的功能时没起作用。最后,在翻阅了半天资料的情况下,根据CSDN博主alexxiyang《Shiro的rememberMe功能使用指导(为什么rememberMe设置了没作用?)》得到解决方案,非常感谢!
- 用shiro、redis做登录权限处理
neutrons.
java
前言最近,需要用shiro做一套登录,机缘巧合看到了张开涛大佬的跟我学shiro本文也是在此基础上完成的,点击上方链接可以到网盘上下载pdf尽管有文档参考,但还是遇到了很多坑,所以在快要完成的时候写个blog总结回顾,等不忙的时候我会整理一份demo发到GitHub或者gitee上先简单看下shiro,下面这些在很多地方都能看到列在这,是为了留给之前没看过的或(懒得找的—不是个好习惯)Shiro的
- 第二十二章 集成验证码——《跟我学Shiro》
jinnianshilongnian
跟我学Shiro
目录贴:跟我学Shiro目录贴在做用户登录功能时,很多时候都需要验证码支持,验证码的目的是为了防止机器人模拟真实用户登录而恶意访问,如暴力破解用户密码/恶意评论等。目前也有一些验证码比较简单,通过一些OCR工具就可以解析出来;另外还有一些验证码比较复杂(一般通过如扭曲、加线条/噪点等干扰)防止OCR工具识别;但是在中国就是人多,机器干不了的可以交给人来完成,所以在中国就有很多打码平台,人工识别验证
- Shiro框架简单介绍及使用
Bolon0708
Javashiro
目录一、架构二、实现Realm(1)缓存机制(2)散列算法与加密算法(3)用户注册(4)匹配(5)获取用户的角色和权限信息(6)会话三、与SpringMVC集成(1)配置前端过滤器四、总结五、推荐本篇内容大多总结自张开涛的《跟我学Shiro》原文地址:http://jinnianshilongnian.iteye.com/blog/2018936我并没有全部看完,只是选择了一部分对我来说急需在项目
- Apache Shiro 角色和权限
在奋斗的大道
apacheshiro学习笔记
本文转载自《跟我学Shiro》授权,也叫访问控制,即在应用中控制谁能访问哪些资源(如访问页面/编辑数据/页面操作等)。在授权中需了解的几个关键对象:主体(Subject)、资源(Resource)、权限(Permission)、角色(Role)。主体主体,即访问应用的用户,在Shiro中使用Subject代表该用户。用户只有授权后才允许访问相应的资源。资源在应用中用户可以访问的任何东西,比如访问J
- 第二章 身份验证——《跟我学Shiro》
jinnianshilongnian
跟我学Shiro
目录贴:跟我学Shiro目录贴身份验证,即在应用中谁能证明他就是他本人。一般提供如他们的身份ID一些标识信息来表明他就是他本人,如提供身份证,用户名/密码来证明。在shiro中,用户需要提供principals(身份)和credentials(证明)给shiro,从而应用能验证用户身份:principals:身份,即主体的标识属性,可以是任何东西,如用户名、邮箱等,唯一即可。一个主体可以有多个pr
- 第十三章 RememberMe——《跟我学Shiro》
jinnianshilongnian
跟我学Shiro
目录贴:跟我学Shiro目录贴Shiro提供了记住我(RememberMe)的功能,比如访问如淘宝等一些网站时,关闭了浏览器下次再打开时还是能记住你是谁,下次访问时无需再登录即可访问,基本流程如下:1、首先在登录页面选中RememberMe然后登录成功;如果是浏览器登录,一般会把RememberMe的Cookie写到客户端并保存下来;2、关闭浏览器再重新打开;会发现浏览器还是记住你的;3、访问一般
- 第九章 JSP标签——《跟我学Shiro》
jinnianshilongnian
跟我学Shiro
目录贴:跟我学Shiro目录贴Shiro提供了JSTL标签用于在JSP/GSP页面进行权限控制,如根据登录用户显示相应的页面按钮。导入标签库标签库定义在shiro-web.jar包下的META-INF/shiro.tld中定义。guest标签欢迎游客访问,登录 用户没有身份验证时显示相应信息,即游客访问信息。user标签欢迎[]登录,退出 用户已经身份验证/记住我登录后显示相应的信息。authen
- 第一章 Shiro简介——《跟我学Shiro》
qq_15014327
Shiro
1.1简介ApacheShiro是Java的一个安全框架。目前,使用ApacheShiro的人越来越多,因为它相当简单,对比SpringSecurity,可能没有SpringSecurity做的功能强大,但是在实际工作时可能并不需要那么复杂的东西,所以使用小而简单的Shiro就足够了。对于它俩到底哪个好,这个不必纠结,能更简单的解决项目问题就好了。本教程只介绍基本的Shiro使用,不会过多分析源码
- 跟开涛学shiro遇到异常Cannot find any provider supporting AES/CBC/PKCS5Padding【解决】
iteye_15971
shiro
在学习shiro中遇到很多问题,网上资料较少,只有硬啃英文,但demo太少,不好理解。ITeye博客中开涛对编写了比较全的系列教程跟我学Shiro目录贴,提供给大家学习,感谢开涛。在学习到第十三章RememberMe——《跟我学Shiro》的时候,有一个问题困扰了我2天,给开涛留言,至今未回复,功夫不复有心人,今天早上得到了解决。问题描述:1.按照开涛的测试过程测试:1、访问http://loca
- 《跟我学Shiro》学习笔记 第一章:Shiro简介
卑微幻想家
前言现在在学习Shiro,参照着张开涛老师的博客进行学习,然后自己写博客记录一下学习中的知识点,一来可以加深理解,二来以后遗忘了可以查阅。没有学习过Shiro的小伙伴,也可以和我一起学习,大家共同进步!1.1Shiro的简介ApacheShiro是Java的一个安全框架。目前,使用ApacheShiro的人越来越多,因为它相当简单。可能没有SpringSecurity做的功能强大,但是实际工作中可
- 30分钟学会如何使用Shiro
weixin_30426879
本篇内容大多总结自张开涛的《跟我学Shiro》原文地址:http://jinnianshilongnian.iteye.com/blog/2018936我并没有全部看完,只是选择了一部分对我来说急需在项目中使用的知识加以学习。并且对于大多数第一次接触Shiro的同学来说,掌握这些也应该足够了。一、架构要学习如何使用Shiro必须先从它的架构谈起,作为一款安全框架Shiro的设计相当精妙。Shiro
- SpringMVC源码研究之注解mvc:argument-resolvers
夫礼者
SpringSpringMVC
接之前的文章SpringMVC源码研究之注解mvc:annotation-driven1.起因最近在看开涛大神的《跟我学Shiro》系列文章的源码时,发现这样的一个技巧:通过一个继承自Shiro自定义PathMatchingFilter的SysUserFilter类将当前用户的信息推入到本次请求Request实例中;然后使用自定义注解@CurrentUser和和继承自HandlerMethodAr
- 第五章 Shiro编码/加密
rrz634171
shiro
第五章编码/加密——《跟我学Shiro》博客分类:跟我学Shiro跟我学Shiro目录贴:跟我学Shiro目录贴在涉及到密码存储问题上,应该加密/生成密码摘要存储,而不是存储明文密码。比如之前的600wcsdn账号泄露对用户可能造成很大损失,因此应加密/生成不可逆的摘要方式存储。5.1编码/解码Shiro提供了base64和16进制字符串编码/解码的API支持,方便一些编码解码操作。Shiro内部
- java杨辉三角
3213213333332132
java基础
package com.algorithm;
/**
* @Description 杨辉三角
* @author FuJianyong
* 2015-1-22上午10:10:59
*/
public class YangHui {
public static void main(String[] args) {
//初始化二维数组长度
int[][] y
- 《大话重构》之大布局的辛酸历史
白糖_
重构
《大话重构》中提到“大布局你伤不起”,如果企图重构一个陈旧的大型系统是有非常大的风险,重构不是想象中那么简单。我目前所在公司正好对产品做了一次“大布局重构”,下面我就分享这个“大布局”项目经验给大家。
背景
公司专注于企业级管理产品软件,企业有大中小之分,在2000年初公司用JSP/Servlet开发了一套针对中
- 电驴链接在线视频播放源码
dubinwei
源码电驴播放器视频ed2k
本项目是个搜索电驴(ed2k)链接的应用,借助于磁力视频播放器(官网:
http://loveandroid.duapp.com/ 开放平台),可以实现在线播放视频,也可以用迅雷或者其他下载工具下载。
项目源码:
http://git.oschina.net/svo/Emule,动态更新。也可从附件中下载。
项目源码依赖于两个库项目,库项目一链接:
http://git.oschina.
- Javascript中函数的toString()方法
周凡杨
JavaScriptjstoStringfunctionobject
简述
The toString() method returns a string representing the source code of the function.
简译之,Javascript的toString()方法返回一个代表函数源代码的字符串。
句法
function.
- struts处理自定义异常
g21121
struts
很多时候我们会用到自定义异常来表示特定的错误情况,自定义异常比较简单,只要分清是运行时异常还是非运行时异常即可,运行时异常不需要捕获,继承自RuntimeException,是由容器自己抛出,例如空指针异常。
非运行时异常继承自Exception,在抛出后需要捕获,例如文件未找到异常。
此处我们用的是非运行时异常,首先定义一个异常LoginException:
/**
* 类描述:登录相
- Linux中find常见用法示例
510888780
linux
Linux中find常见用法示例
·find path -option [ -print ] [ -exec -ok command ] {} \;
find命令的参数;
- SpringMVC的各种参数绑定方式
Harry642
springMVC绑定表单
1. 基本数据类型(以int为例,其他类似):
Controller代码:
@RequestMapping("saysth.do")
public void test(int count) {
}
表单代码:
<form action="saysth.do" method="post&q
- Java 获取Oracle ROWID
aijuans
javaoracle
A ROWID is an identification tag unique for each row of an Oracle Database table. The ROWID can be thought of as a virtual column, containing the ID for each row.
The oracle.sql.ROWID class i
- java获取方法的参数名
antlove
javajdkparametermethodreflect
reflect.ClassInformationUtil.java
package reflect;
import javassist.ClassPool;
import javassist.CtClass;
import javassist.CtMethod;
import javassist.Modifier;
import javassist.bytecode.CodeAtt
- JAVA正则表达式匹配 查找 替换 提取操作
百合不是茶
java正则表达式替换提取查找
正则表达式的查找;主要是用到String类中的split();
String str;
str.split();方法中传入按照什么规则截取,返回一个String数组
常见的截取规则:
str.split("\\.")按照.来截取
str.
- Java中equals()与hashCode()方法详解
bijian1013
javasetequals()hashCode()
一.equals()方法详解
equals()方法在object类中定义如下:
public boolean equals(Object obj) {
return (this == obj);
}
很明显是对两个对象的地址值进行的比较(即比较引用是否相同)。但是我们知道,String 、Math、I
- 精通Oracle10编程SQL(4)使用SQL语句
bijian1013
oracle数据库plsql
--工资级别表
create table SALGRADE
(
GRADE NUMBER(10),
LOSAL NUMBER(10,2),
HISAL NUMBER(10,2)
)
insert into SALGRADE values(1,0,100);
insert into SALGRADE values(2,100,200);
inser
- 【Nginx二】Nginx作为静态文件HTTP服务器
bit1129
HTTP服务器
Nginx作为静态文件HTTP服务器
在本地系统中创建/data/www目录,存放html文件(包括index.html)
创建/data/images目录,存放imags图片
在主配置文件中添加http指令
http {
server {
listen 80;
server_name
- kafka获得最新partition offset
blackproof
kafkapartitionoffset最新
kafka获得partition下标,需要用到kafka的simpleconsumer
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.
- centos 7安装docker两种方式
ronin47
第一种是采用yum 方式
yum install -y docker
- java-60-在O(1)时间删除链表结点
bylijinnan
java
public class DeleteNode_O1_Time {
/**
* Q 60 在O(1)时间删除链表结点
* 给定链表的头指针和一个结点指针(!!),在O(1)时间删除该结点
*
* Assume the list is:
* head->...->nodeToDelete->mNode->nNode->..
- nginx利用proxy_cache来缓存文件
cfyme
cache
user zhangy users;
worker_processes 10;
error_log /var/vlogs/nginx_error.log crit;
pid /var/vlogs/nginx.pid;
#Specifies the value for ma
- [JWFD开源工作流]JWFD嵌入式语法分析器负号的使用问题
comsci
嵌入式
假如我们需要用JWFD的语法分析模块定义一个带负号的方程式,直接在方程式之前添加负号是不正确的,而必须这样做:
string str01 = "a=3.14;b=2.71;c=0;c-((a*a)+(b*b))"
定义一个0整数c,然后用这个整数c去
- 如何集成支付宝官方文档
dai_lm
android
官方文档下载地址
https://b.alipay.com/order/productDetail.htm?productId=2012120700377310&tabId=4#ps-tabinfo-hash
集成的必要条件
1. 需要有自己的Server接收支付宝的消息
2. 需要先制作app,然后提交支付宝审核,通过后才能集成
调试的时候估计会真的扣款,请注意
- 应该在什么时候使用Hadoop
datamachine
hadoop
原帖地址:http://blog.chinaunix.net/uid-301743-id-3925358.html
存档,某些观点与我不谋而合,过度技术化不可取,且hadoop并非万能。
--------------------------------------------万能的分割线--------------------------------
有人问我,“你在大数据和Hado
- 在GridView中对于有外键的字段使用关联模型进行搜索和排序
dcj3sjt126com
yii
在GridView中使用关联模型进行搜索和排序
首先我们有两个模型它们直接有关联:
class Author extends CActiveRecord {
...
}
class Post extends CActiveRecord {
...
function relations() {
return array(
'
- 使用NSString 的格式化大全
dcj3sjt126com
Objective-C
格式定义The format specifiers supported by the NSString formatting methods and CFString formatting functions follow the IEEE printf specification; the specifiers are summarized in Table 1. Note that you c
- 使用activeX插件对象object滚动有重影
蕃薯耀
activeX插件滚动有重影
使用activeX插件对象object滚动有重影 <object style="width:0;" id="abc" classid="CLSID:D3E3970F-2927-9680-BBB4-5D0889909DF6" codebase="activex/OAX339.CAB#
- SpringMVC4零配置
hanqunfeng
springmvc4
基于Servlet3.0规范和SpringMVC4注解式配置方式,实现零xml配置,弄了个小demo,供交流讨论。
项目说明如下:
1.db.sql是项目中用到的表,数据库使用的是oracle11g
2.该项目使用mvn进行管理,私服为自搭建nexus,项目只用到一个第三方 jar,就是oracle的驱动;
3.默认项目为零配置启动,如果需要更改启动方式,请
- 《开源框架那点事儿16》:缓存相关代码的演变
j2eetop
开源框架
问题引入
上次我参与某个大型项目的优化工作,由于系统要求有比较高的TPS,因此就免不了要使用缓冲。
该项目中用的缓冲比较多,有MemCache,有Redis,有的还需要提供二级缓冲,也就是说应用服务器这层也可以设置一些缓冲。
当然去看相关实现代代码的时候,大致是下面的样子。
[java]
view plain
copy
print
?
public vo
- AngularJS浅析
kvhur
JavaScript
概念
AngularJS is a structural framework for dynamic web apps.
了解更多详情请见原文链接:http://www.gbtags.com/gb/share/5726.htm
Directive
扩展html,给html添加声明语句,以便实现自己的需求。对于页面中html元素以ng为前缀的属性名称,ng是angular的命名空间
- 架构师之jdk的bug排查(一)---------------split的点号陷阱
nannan408
split
1.前言.
jdk1.6的lang包的split方法是有bug的,它不能有效识别A.b.c这种类型,导致截取长度始终是0.而对于其他字符,则无此问题.不知道官方有没有修复这个bug.
2.代码
String[] paths = "object.object2.prop11".split("'");
System.ou
- 如何对10亿数据量级的mongoDB作高效的全表扫描
quentinXXZ
mongodb
本文链接:
http://quentinXXZ.iteye.com/blog/2149440
一、正常情况下,不应该有这种需求
首先,大家应该有个概念,标题中的这个问题,在大多情况下是一个伪命题,不应该被提出来。要知道,对于一般较大数据量的数据库,全表查询,这种操作一般情况下是不应该出现的,在做正常查询的时候,如果是范围查询,你至少应该要加上limit。
说一下,
- C语言算法之水仙花数
qiufeihu
c算法
/**
* 水仙花数
*/
#include <stdio.h>
#define N 10
int main()
{
int x,y,z;
for(x=1;x<=N;x++)
for(y=0;y<=N;y++)
for(z=0;z<=N;z++)
if(x*100+y*10+z == x*x*x
- JSP指令
wyzuomumu
jsp
jsp指令的一般语法格式: <%@ 指令名 属性 =”值 ” %>
常用的三种指令: page,include,taglib
page指令语法形式: <%@ page 属性 1=”值 1” 属性 2=”值 2”%>
include指令语法形式: <%@include file=”relative url”%> (jsp可以通过 include