通用权限管理系统组件 (GPM - General Permissions Manager) 中后一个登录的把前一个登录的踢掉功能的实现...

为什么80%的码农都做不了架构师?>>> 最近客户有需要,同一个帐户可以重复登录系统,但是后登录的账户需要把前面已经登录的账户踢掉,例如客户把电脑打开在别的电脑上然后换一个房间,或者换个办公楼想登录时就会遇到很多麻烦,遇到郁闷的情况就是死活无法登录系统,因为那个帐户已经在线了,或者2个帐户都登录了,最新消息提醒会乱套。 其实软件是否好用都是体现在能否经得起各种折磨上,有的软件把问题考虑得很充分,不管遇到什么麻烦事情都已经帮你处理好了,想得非常周到,下面我们看看通用权限管理系统里的处理方式。 1
分类: 其他 发布时间: 06-16 23:13 阅读次数: 0

折腾Oracle问题小菜记[分页存储过程/查询所有表、视图、存储过程/查询表、视图、存储过程字段结构与参数](三)...

2019独角兽企业重金招聘Python工程师标准>>> 说明: 为了让CYQ.Data 框架支持Oracle,这几天对Oracle进行了基本探索,并把中间遇到的问题轻轻的记录了下来,与大伙共享。 总共有三篇: 1:初折腾Oracle问题小记 2:初折腾Oracle问题小记二 3:就是本篇了:折腾Oracle问题小菜记(三) 本篇又有新突破,再记录一下: 1:自己写了一条分页存储过程,也是CYQ.Data默认产生的存储过程: create or replace package MyPackage
分类: 其他 发布时间: 06-16 23:12 阅读次数: 0

mysql-otp 驱动中设置utf8mb4

2019独角兽企业重金招聘Python工程师标准>>> utf8mb4支持emoji表情,在mysql中设置连接字符集为utf8mb4可以直接储存emoji表情。 可以在客户端连接中设置: SET NAMES utf8mb4 查看是否起效: SHOW VARIABLES LIKE 'char%'; 在mysql-otp可以在mysql:start_link/1函数中启用下面这个选项 {queries, ["SET NAMES utf8mb4"]} 转载于:https://my.oschin
分类: 其他 发布时间: 06-16 23:12 阅读次数: 0

Shiro入门(三)Shiro异常和JdbcRealm

版权声明:程序猴jwang版权所有 https://blog.csdn.net/qq_21046965/article/details/90047131 前言 本章讲解Shiro的异常和JdbcRealm的相关知识 方法 1.回顾 在之前,我们完成了shiro的登陆验证,不知道大家有没有试过写错密码或者用户名会出现什么情况? 是会出现诸如“用户登陆失败!”的字眼吗?显然不是的!!他将会抛出异常。 还有,我们是通过在shiro配置文件中配置users来进行用户的认证,那么大多数情况下,我们都是在
分类: 其他 发布时间: 06-16 23:12 阅读次数: 0

Shiro入门(四)Shiro登录验证源码及策略

版权声明:程序猴jwang版权所有 https://blog.csdn.net/qq_21046965/article/details/90083287 前言 本章讲解Shiro登录验证的源码剖析以及登录验证策略 方法 一、Shiro登陆验证源码解析 1.使用Subject的login方法验证token 2.实际上Subject类仅仅是一个接口,他通过实现类DelegatingSubject将token委托给SecurityManager 来完成验证 3.而SecurityManager作为“
分类: 其他 发布时间: 06-16 23:11 阅读次数: 0

Shiro入门(五)Shiro自定义Realm和加密算法

版权声明:程序猴jwang版权所有 https://blog.csdn.net/qq_21046965/article/details/90105915 前言 本章讲解shiro自定义的realm和它的加密算法 方法 1.概念 通过前面的讲解,我已经带入了自定义Realm的相关概念。那么为什么要自定义realm呢?显而易见,我们在数据库中创建的users表和它的字段受限于shiro自己的jdbcRealm,所以通常情况下我们需要使用自己的表,跟着必须使用自定义realm。 再者,在用户表中,密
分类: 其他 发布时间: 06-16 23:11 阅读次数: 0

Shiro入门(六)Shiro授权

版权声明:程序猴jwang版权所有 https://blog.csdn.net/qq_21046965/article/details/90110243 前言 本章讲解Shiro授权的相关知识 方法 1.概念 Authorization:授权,也就是授予用户访问某些资源的权限。 前提在于需要用户通过登录验证才可以进行授权。 权限(permit):表示某些功能,如按钮的显示,菜单的访问,数据的CRUD 角色(role): 权限的集合,比如管理员角色,其拥有访问系统全部菜单的权限 2.Shiro中
分类: 其他 发布时间: 06-16 23:11 阅读次数: 0

Shiro入门(七)自定义Realm的授权

版权声明:程序猴jwang版权所有 https://blog.csdn.net/qq_21046965/article/details/90113017 前言 本章学习自定义Realm的授权方式 方法 1.概念 1)关于授权流程的源码剖析,希望读者自行根据登陆验证的模式进行查阅 2)关于JdbcRealm的授权方式,希望读者自行编写 由于JdbcRealm的授权方式受限于表,一般情况下我们都使用自定义的realm来进行授权操作。 2.编码实现 1)编写shiro.ini文件如下 [main]
分类: 其他 发布时间: 06-16 23:11 阅读次数: 0

centos7上部署oVirt平台管理kvm

oVirt平台介绍oVirt是一种开源分布式虚拟化解决方案,旨在管理整个企业基础架构。oVirt使用受信任的KVM管理程序,并基于其他几个社区项目构建,包括libvirt,Gluster,PatternFly和Ansible。官方网站https://www.ovirt.org/oVirt是RedHat虚拟化管理平台RHEV的开源版本。该项目起源于Qumranet,该公司在2008年被RedHat收
分类: 企业开发 发布时间: 06-16 23:10 阅读次数: 0

Shiro进阶(一)Shiro整合SSH之登录认证

版权声明:程序猴jwang版权所有 https://blog.csdn.net/qq_21046965/article/details/90139702 前言 本章讲解Shiro整合SSH的步骤 方法 1.概念 之前我们讲了Shiro的认证和授权,那么一般而言我们都是在web条件下进行的,所以我们来聊一下Shiro整合SSH的关键步骤。这里的SSH是我之前将SMS时的代码,这部分的整合代码我就略过了。有兴趣的可以翻翻我前面SSH框架的博客。 项目结构: 2.关键步骤 1)引入相关jar 由于是
分类: 其他 发布时间: 06-16 23:10 阅读次数: 0

Shiro进阶(二)Shiro整合SSH之授权

版权声明:程序猴jwang版权所有 https://blog.csdn.net/qq_21046965/article/details/90145069 前言 本章讲解Shiro整合SSH时授权的相关知识 方法 1.准备工作 我们将使用自定义的realm来进行授权的管理,那么数据库表和实体类就需要自己来搭建了,我这里已经准备好了! 除了之前的用户表之外,我们还需要配置如下两个表,用户-角色表和角色-权限表 编写对应的实体类: UserRoles.java和RolesPers.java 编写好通
分类: 其他 发布时间: 06-16 23:10 阅读次数: 0

Shiro进阶(三)Shiro之缓存和会话管理

版权声明:程序猴jwang版权所有 https://blog.csdn.net/qq_21046965/article/details/90180101 前言 本章讲解shiro中缓存和会话的管理 方法 1.概念 在之前的例子中我们发现,我们每一次访问需要一定权限的url是,程序将自动的去数据库中查询所需要的角色权限信息,一旦我们的菜单和按钮上写入的控制太多,那么将对应查询很多次数据库。 上面显示,我们每次访问需要权限的页面都需要去数据库查询相应的角色和权限。 为了避免上面的问题,我们可以配置
分类: 其他 发布时间: 06-16 23:10 阅读次数: 0

Shiro进阶(四)Shiro之RememberMe

版权声明:程序猴jwang版权所有 https://blog.csdn.net/qq_21046965/article/details/90181321 前言 本章讲解一下Shiro的记住我的功能 方法 1.概念 首先要澄清一点的是,这里的记住我并不是记住用户名和密码。 shiro的记住我是一种基于cookie实现的方式,特定的页面在关掉浏览器后(session消失)也可以进行访问的功能! 2.实现步骤 1)前台登录页面修改 如果需要记住我的功能,那么前台页面需要一个checkbox多选框来让
分类: 其他 发布时间: 06-16 23:10 阅读次数: 0

JAVA化境(二)设计模式之工厂设计模式

版权声明:程序猴jwang版权所有 https://blog.csdn.net/qq_21046965/article/details/90739526 前言 本章讲解Java中工厂设计模式的相关概念 方法 1.概念 所谓的工厂,我们可以理解其为一个生产车间。之前我们需要实例化对象的时候都要使用new关键字,这种方式使得调用者和创建者耦合在了一起,不利于程序的维护与扩展。 使用工厂设计模式,以前new实例化对象的操作有我们的工厂方法代替,将选择实现类、创建对象统一管理和控制,从而将调用者和我们
分类: 其他 发布时间: 06-16 23:09 阅读次数: 0

JAVA化境(三)设计模式之建造者设计模式

版权声明:程序猴jwang版权所有 https://blog.csdn.net/qq_21046965/article/details/90759886 前言 本章讲解建造者设计模式的基本内容 方法 1.概念 经过前面两种设计模式的学习我们不难发现,之前的创建型模型仅仅适合创建不是很复杂的对象!那么现实生活中,总会有一些比较复杂的对象。比如电脑这个对象,其Monitor(显示器)、Machine(机箱)、KeyBoard(键盘)就是其组成部分,这些组成部分又有其独立的相关属性,且组成的顺序等都
分类: 其他 发布时间: 06-16 23:09 阅读次数: 0

JAVA化境(四)设计模式之原型设计模式

版权声明:程序猴jwang版权所有 https://blog.csdn.net/qq_21046965/article/details/90814781 前言 本章讲解原型设计模式的相关概念 方法 1.概念 通过之前的建造者设计模式,我们可以发现可以构建较为复杂的对象。 那么,如果在短时间内要求你创建许多个这样的对象呢?那岂不是很难受。原型设计模式帮我们解决了这一问题! 2.原型设计模式之深浅复制 在讲解原型设计模式之前,我们有必要了解一下克隆(复制)的概念。在Object类中,有一个clon
分类: 其他 发布时间: 06-16 23:09 阅读次数: 0

JAVA化境(五)设计模式之适配器设计模式

版权声明:程序猴jwang版权所有 https://blog.csdn.net/qq_21046965/article/details/90945950 前言 本章讲解适配器模式的相关知识 方法 1.概念 在讲解有关适配器的相关知识之前,有必要了解一下适配器模式的应用场景。 在升级老系统的时候,我们发现有一些类中的方法我们舍不得抛弃,但是新系统又不能直接用这些方法。如果编写新的方法的话又会写一些和老系统方法重复的代码,这个时候我们可以利用适配器模式做到新系统的类方法可以调用老系统的类方法,并在
分类: 其他 发布时间: 06-16 23:09 阅读次数: 0

JAVA化境(六)设计模式之代理设计模式

版权声明:程序猴jwang版权所有 https://blog.csdn.net/qq_21046965/article/details/91400755 前言 本章讲解代理设计模式的相关知识 方法 注意:本人已经在另外一篇博客:Spring入门(八)静态代理与动态代理(jdk、cglib)详细的介绍了代理设计模式中两种常见的代理方式,请大家移步查阅。
分类: 其他 发布时间: 06-16 23:08 阅读次数: 0

JAVA化境(七)设计模式之桥接设计模式

版权声明:程序猴jwang版权所有 https://blog.csdn.net/qq_21046965/article/details/91629640 前言 本章讲解桥接模式的相关知识 方法 1.概念 在讲解桥接模式之前,我们先来了解一下生活中的常见例子: 桥梁类型,按用途分,有铁路桥、公路桥、公铁两用桥、人行桥、运水桥(渡槽)及其他专用桥梁(如通过管道、电缆等)。按跨越障碍分,有跨河桥、跨谷桥、跨线桥(又称立交桥)、高架桥、栈桥等。 如果用Java中的类该如何表示呢? 我们可以设计一个桥类
分类: 其他 发布时间: 06-16 23:08 阅读次数: 0

JAVA化境(八)设计模式之组合设计模式

前言 本章讲解组和设计模式的相关知识 方法 1.概念 在一个树形结构中,有简单元素和复杂元素,复杂元素可能包含复杂元素和简单元素。 组合模式的意义在于:它在我们树型结构的问题中,模糊了简单元素和复杂元素的概念,客户程序可以向处理简单元素一样来处理复杂元素,从而使得客户程序与复杂元素的内部结构解耦。 2.组合模式的实现思路 1)建立相应工程 2)创建抽象组件类 该类用来表示我们系统中的文件和文件夹。 我们将模仿360等杀毒软件对我们系统的文件目录进行查杀!代码如下: package cn.edu
分类: 其他 发布时间: 06-16 23:08 阅读次数: 0