社区
Java EE
帖子详情
spring aop 权限
kayzombie
2009-11-25 12:14:05
我的Action 继承DispatchAction我想用spring 拦截器获取被拦截的方法名?现在得到的方法名总是execute,怎么得到action中真实的方法名啊?
...全文
118
14
打赏
收藏
spring aop 权限
我的Action 继承DispatchAction我想用spring 拦截器获取被拦截的方法名?现在得到的方法名总是execute,怎么得到action中真实的方法名啊?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
panhaichun
2009-11-25
打赏
举报
回复
我靠,跟你说这么清楚了。
struts1所有的action方法调用都先经过execute。
DispatchAction里面的execute就是根据method参数的值来调用其它方法的,因为用的反射,aop拦截不到了,你重写execute方法,根据method参数的值和权限配置,没权限直接退出不去调用action方法不就行了。
public class BaseAction extends DispatchAction {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
if (isRoleAllow(request)) {
return super.execute(......);
} else {
返回权限出错页面或抛出异常等。。。。
}
}
//检查权限
protected boolean isRoleAllow(HttpServletRequest request) {
String method = request.getParamenter(你配置的参数名称);
////if ("save".equals(method)) {//假设save是添加}
////if ("delete".equals(method)) {//假设delete是删除}
读你的权限表判断当前用户有没有权限返回true或false不就行了
return ...
}
}
kayzombie
2009-11-25
打赏
举报
回复
那我现在这种情况该怎么解决啊?
panhaichun
2009-11-25
打赏
举报
回复
楼主你去看下DispatchAction的源代码不是啥的明白了
panhaichun
2009-11-25
打赏
举报
回复
我知道你是这个意思
kayzombie
2009-11-25
打赏
举报
回复
写一个基类继承DispatchAction,重写execute方法,在里面加入你的权限判断逻辑。
另外还可以考虑在别的地方拦截啊
[/Quote]
简单的说就是我有一个action它继承DispatchAction 里面有对客户资料的增,删,改方法,现在我就想在执行增,删,改方法之前判断该用户是否有这个权限?
kayzombie
2009-11-25
打赏
举报
回复
各位帮帮忙啊急~~现在我的Action中有一个方法方法名为showCompanyCusInfo我想用spring的拦截器拦截这个方法并获取到这个方法名,现在得到的方法名总是execute!怎么得到真实的方法名啊?
panhaichun
2009-11-25
打赏
举报
回复
[Quote=引用 4 楼 kayzombie 的回复:]
那有没有什么好的解决方法啊?我现在用的是SSH框架要做权限而且权限还比较细粒。
[/Quote]
写一个基类继承DispatchAction,重写execute方法,在里面加入你的权限判断逻辑。
另外还可以考虑在别的地方拦截啊
kayzombie
2009-11-25
打赏
举报
回复
那有没有什么好的解决方法啊?我现在用的是SSH框架要做权限而且权限还比较细粒。
panhaichun
2009-11-25
打赏
举报
回复
execute里面用反射调用的方法 AOP是拦截不到的
kayzombie
2009-11-25
打赏
举报
回复
<bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames">
<list><value>/customAction</value></list>
</property>
<property name="interceptorNames">
<list><value>authorCustomInter</value></list>
</property>
</bean>
<bean id="authorCustomInter" class="com.psit.struts.action.AuthorityCustomInterceptor"/>
youjianbo_han_87
2009-11-25
打赏
举报
回复
看看你 aop 地方的配置。。。。。。。。。
kayzombie
2009-11-25
打赏
举报
回复
第一次做权限没经验不太清楚怎么做~~先谢啦,一直都想用spring拦截器的~~那我这种情况是不是spring拦截器就不好用啦?
youjianbo_han_87
2009-11-25
打赏
举报
回复
[Quote=引用 4 楼 kayzombie 的回复:]
那有没有什么好的解决方法啊?我现在用的是SSH框架要做权限而且权限还比较细粒。
[/Quote]
spring securetiy可以吗?
NeverGiveUp2016
2009-11-25
打赏
举报
回复
建议使用struts2 .
spring
-
aop
实例demo
在
Spring
框架中,
AOP
(面向切面编程)是一种强大的工具,它允许程序员定义“切面”,这些切面封装了应用程序中的交叉关注点,如日志、事务管理、
权限
检查等。
Spring
AOP
是基于代理的,它可以为普通Java对象(POJOs)...
基于
spring
security+
spring
mvc+
spring
+hibernate的
权限
管理系统(免积分)
基于
spring
security+
spring
mvc+
spring
+hibernate的
权限
管理系统,实现资源、用户、
权限
、角色的增删改查,角色-资源管理,用户-角色管理等基础功能,可以作为
spring
mvc+
spring
+hibernate的增删改查入门项目,也可以...
权限
管理 struts2 hiberante3.5
spring
3.0 annotation
Spring
3.0作为依赖注入(DI)和面向切面编程(
AOP
)的容器,它提供了全面的应用程序管理解决方案。
Spring
Security(前身为Acegi Security)是
Spring
生态系统中的一个强大安全框架,支持细粒度的
权限
控制。在
Spring
...
spring
3+security3+struts2开源
权限
项目
- **
Spring
3**:
Spring
是一个全面的企业级应用开发框架,提供了依赖注入、
AOP
(面向切面编程)、事务管理等功能,使得代码更易于测试和维护。 - **
Spring
Security 3**:作为
Spring
的扩展,
Spring
Security提供了...
Struts2+
Spring
+Hibernate框架技术与项目实战源码与PDF.3
Spring
框架则是一个全面的企业级应用框架,涵盖了依赖注入(DI)、面向切面编程(
AOP
)、数据访问、事务管理等多个方面。
Spring
的IoC容器是其核心,通过配置文件或注解实现对象的管理和依赖关系的建立。同时,
Spring
...
Java EE
67,549
社区成员
225,860
社区内容
发帖
与我相关
我的任务
Java EE
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
复制链接
扫一扫
分享
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章