使用Apache shiro进行权限管理时如何对同一个URL配置多个角色的或关系 在开发web应用时,通常会对一个用户分配某个角色。该角色拥有一定的权限,那么需要进行权限管理。在进行权限管理的时候,常常会遇到不同角色的用户访问相同URL的情况。如果只有部分角色访问该URL,那么需要限制只有这些角色才可以访问该URL。 在这种情况下,涉及的是角色之间的或关系的管理。因为一般情况下,一个用户通常只有一个角色。shiro的过滤中有个RolesAuthor
JavaScript的原型对象 我们创建的每个函数都有一个prototype属性,这个属性是一个指针,指向一个对象,而这个prototype原型对象的用途是包含可以由特定类型的所有实例共享的属性和方法。这么理解的话,prototype就是通过调用构造函数而创建的那个对象实例的原型对象。使用prototype对象可以让所有对象实例共享prototype所包含的属性和方法。
tomcat context.xml文件配置<Loader delegate="true" />作用 原文地址:http://segmentfault.com/q/1010000000155690 简而言之,JVM的classloader加载继承关系分为BootstarpClassLoader --> ExtClassLoader --> SystemClassLoader,应用的WebAppClassLoader继承自SystemClassLoader,在加载具体某
JavaScript中继承机制的实现 处于安全的考虑,本地类和宿主类不能作为基类。JavaScript中的继承是通过模仿实现的。 对象冒充:构造函数方法使用this关键为对象添加属性和方法,并且赋值。但构造函数A只是一个方法,是一个对象,因此可以将A赋值给其他对象B的方法。那么B对象将成为A中的this指向的对象,那么B就可以获得A构造函数中的方法和属性 function PersonA(na
JS中创建对象的方式 JavaScript中的所有事物都是对象:字符串、数组、数值、函数等。JS中并没有类的概念,但我们可以利用JS的语法特征,以类的思想来创建对象。 原始方法 var obj = new Object(); obj.name = "Koji"; //为对象添加属性 obj.age = 21; obj.showName = function(){
SSH2整合开发 1、创建一个web project,在tomcat的conf的server.xml文件中添加该项目的Context配置 2、配置struts2。加入struts2依赖的jar包。 在web.xml配置文件中加入struts2的信息 将struts.x
Spring AOP的基本概念 AOP本质 AOP(Aspect-Oriented Programming, 面相方面编程),可以说是OOP的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力。也就是说,OOP允许你定义从上到下的关系,但并不适合定义从左到右的关系。例如日志功
代理模式与动态代理 代理模式的作用是:为其他对象提供一种代理,以控制对这个对象的访问。在某些情况下,一个客户不想或不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。 编程与设计思想:掌握代理模式对于Spring AOP的学习是至关重要的,甚至比Spring AOP本身的学习还要重要。 代理模式的一般角色: 抽象角色:声明真实对象
单例模式 生成单例的第一种方式。该方法没有并发问题public class Singleton { //在类的内部生成唯一一个实例。 private static Singleton instance = new Singleton(); private Singleton(){} //构造方法为private,无法从外部实例化该类 public static Singleton get
Java语言的反射机制 在Java运行时环境中,对于任何一个类,都可以知道这个类有哪些属性和方法,对于任何一个类,也能调用它的任意一个方法。这种动态获取类的信息以及动态调用对象的方法的功能来自Java语言的反射(Reflection)机制 Java反射机主要提供了以下几个功能: 1、在运行时判断任意一个对象所属的类 2、在运行时构造任意一个类的对象。
struts2中的OGNL 这里,我们将介绍一些和Struts2框架并存的ONGL的特性的例子。 Struts2框架使用一个标准的命名上下文来计算OGNL表达式。处理OGNL的顶级对象是一个Map。ONGL有一个概念:上下文环境中只有一个根对象。在表达式中,根对象的属性不用任何特殊的"标记"概念就可以引用。引用其他的对象需要使用#标识符。 Struts2框架将ActionConte
OGNL基础:特定于Xwork的语言特性 特定于Xwork的语言特性 XWork在OGNL基础上最大的变化是提供了对值栈(ValueStack)的支持。OGNL在只有一个根对象的假设下运行,而XWork的值栈概念要求有多个根。 例如,假设我们使用标准的OGNL(不使用XWork)并且在OgnlContext(本身就是一个Map的子类)的map中有两个对象:"foo"->foo和"
OGNL详解(单纯的OGNL,并未和struts2内容关联) OGNL是Object-Graph Navigation Language的缩写,叫做对象图导航语言,它是一种功能强大的表达式语言通过它简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转化等功能。 OGNL实现的最重要的类有两个,一个是OgnlContext类,是OGNL的上下文。其定义部分如下:(仅仅保留了类的完整申明