java 中用户访问权限(spring 权限管理)
// AuthorityInterceptor.java 文件
package com.aptech.jb.epet.web.authority;
import javax.servlet.http.HttpServletRequest;
import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;
import org.apache.struts.action.ActionMapping;
public class AuthorityInterceptor implements MethodInterceptor {
public Object invoke(MethodInvocation methodInvocation) throws Throwable {
System.out.println("=============AuthorityInterceptor==="+methodInvocation.getMethod().getName());
HttpServletRequest request=null;
ActionMapping mapping=null;
Object [] args=methodInvocation.getArguments();
for(int i=0;i<args.length;i++){
//左边是否是右边的一实例
if(args[i] instanceof HttpServletRequest)
request=(HttpServletRequest) args[i];
if(args[i] instanceof ActionMapping)
mapping=(ActionMapping) args[i];
}
if(request.getSession().getAttribute("CURRENT_PET")!=null){
return methodInvocation.proceed();
}else{
return mapping.findForward("index");
}
}
}
------------------------------------------------------------------------
------------------spring 配置文件如下------------------
-----authorityInterceptor 为 AuthorityInterceptor 的实例。
<!-- 自动创建权限代理 -->
<bean
class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames">0
<list>
<value>/pet</value>
<value>/diary</value> //不能包含当前登录Action path 路径
</list>
</property>
<property name="interceptorNames">
&n
相关文档:
类的初始化和对象初始化是 JVM 管理的类型生命周期中非常重要的两个环节,Google 了一遍网络,有关类装载机制的文章倒是不少,然而类初始化和对象初始化的文章并不多,特别是从字节码和 JVM 层次来分析的文章更是鲜有所见。
本文主要对类和对象初始化全过程进行分析,通过一个实际问题引入,将源代码转换成 JVM 字节码后, ......
java的事务处理,原来是这么一回事,如果对数据库进行多次操作,每一次的执行或步骤都是一个事务.如果数据库操作在某一步没有执行或出现异常而导致事务失败,这样有的事务被执行有的就没有被执行,从而就有了事务的回滚,取消先前的操作.....
JavaBean中使用JDBC方式进行事务处理
public int delete(int sID) {
......
1.Prototyping: in general (Enterprise) Java projects start with evaluation which frameworks to use. This can take from few hours, to several months (although these times are hopefully over). Java EE 6 comes with “one stop shopping”. You can download Java EE 6 with the IDE (eclipse, netbe ......
简化Java应用程序的打包和发布
发布Java应用程序时你会感到困难?好在Java提供了一系列打包和发布工具,可以显著的简化发布过程
该文章提供了打包Java code的几种方法,我们将会探讨Java manifest 文件,给出用于管理JAR文件所依赖文件、估计跨平台发布所需的CLasspath的合适方法.我也会解释如何使用manifest包版本特性 ......
一、面向对象的特征有哪些方面
1.抽象:
抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。
2 ......