- 浏览: 123648 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (47)
- 前端开发 (11)
- 数据库 (12)
- mongodb mongo 数据库 操作 (1)
- java (31)
- sping (6)
- hibernate (6)
- 博客 (1)
- 借鉴 (1)
- lhgdialog (1)
- jequery (3)
- struts2 (8)
- CXF (1)
- WEBSERVICE (3)
- SSH (9)
- 工具类 (4)
- email (1)
- 邮件 (1)
- 发送 (1)
- db2查询 (2)
- 日期对比 (1)
- lucence (1)
- js (2)
- 浮动 (1)
- 弹出层 (1)
- oracle (6)
- mysql (2)
- 进程 (1)
- windows (1)
- axis (1)
- 存储过程 (1)
- 游标 (1)
- oracle,游标 (1)
最新评论
-
xiangyongit:
新手看不懂呀,能不能稍微加些备注
js实现点击复制 -
小二黑:
mark 0000
dwr基于struts2和spring2.5的配置详解 -
QuarterLifeForJava:
不错,虽然有点少 。谢谢分享。
SSH框架常用一些工具类整理
1、struts-config.xml中的配置
2、拦截类
在以上拦截类中。系统会拦截到类似于loginAction.islogin这样的请求,在配置中我们将这样的请求手动录入数据库,然后根据当前用户查询该请求是否授权于用户(该块功能自己设计,比较简单),在用户登录时即将这样授权用户的请求数据取出放入session,在页面中用fn标签进行这样的判断:
如果授权了,则该功能链接显示并能使用。
<package name="ehrDefault" extends="struts-default"> <interceptors> <interceptor name="admin" class="com.gd.interceptor.AdminInterceptor" /> <interceptor-stack name="requireLogin"> <interceptor-ref name="defaultStack" /> <interceptor-ref name="admin" /> </interceptor-stack> </interceptors> <default-interceptor-ref name="requireLogin" /> <global-results> <result name="login" type="redirect">/index.jsp</result> </global-results> </package>
2、拦截类
package com.gd.interceptor; import java.util.Map; import javax.servlet.ServletContext; import org.apache.commons.lang.StringUtils; import org.apache.struts2.ServletActionContext; import org.springframework.context.ApplicationContext; import org.springframework.web.context.support.WebApplicationContextUtils; import com.gd.po.Userinfo; import com.gd.service.ISecurityPermissionManager; import com.gd.service.ISecurityUserManager; import com.opensymphony.xwork2.Action; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.interceptor.AbstractInterceptor; public class AdminInterceptor extends AbstractInterceptor { private static final long serialVersionUID = 7426957840297915277L; @Override public String intercept(ActionInvocation ai) throws Exception { Map<String, Object> session = ai.getInvocationContext().getSession(); if (session == null) { return Action.LOGIN; } Userinfo user = (Userinfo) session.get("user"); if (user == null) { return Action.LOGIN; } // 用户访问Action权限判断 if (!actionAuthority(ai, session)) { return Action.LOGIN; } return ai.invoke(); } public boolean actionAuthority(ActionInvocation ai, Map<String, Object> session) { // 用户访问Action权限判断 ServletContext sc = ServletActionContext.getServletContext(); String permission = ai.getProxy().getActionName().toLowerCase() + "." + ai.getProxy().getMethod().toLowerCase(); ApplicationContext context = WebApplicationContextUtils.getWebApplicationContext(sc); ISecurityUserManager securityUserManager = (ISecurityUserManager) context.getBean("securityUserManager"); ISecurityPermissionManager securityPermissionManager = (ISecurityPermissionManager) context.getBean("securityPermissionManager"); if(!securityPermissionManager.checkIsRepeatPermission(permission)){ return true; } if(securityUserManager!=null){ Userinfo userInfo=(Userinfo)session.get("user"); return securityUserManager.checkPrivilege(userInfo.getUserName(),permission); } return true; } }
在以上拦截类中。系统会拦截到类似于loginAction.islogin这样的请求,在配置中我们将这样的请求手动录入数据库,然后根据当前用户查询该请求是否授权于用户(该块功能自己设计,比较简单),在用户登录时即将这样授权用户的请求数据取出放入session,在页面中用fn标签进行这样的判断:
<c:if test="${fn:containsIgnoreCase(permissions, 'classiccasesaction.list')}"> <li><a href="ClassicCasesAction!list.action" target="main">病例自学</a></li> </c:if>
如果授权了,则该功能链接显示并能使用。
发表评论
-
myeclipse根据wsdl文件生成webservice服务端
2017-05-22 11:38 1139java开发会经常涉及到接口开发,有时候会涉及调用对方提供 ... -
spring+mybatis+mysql示例
2017-03-02 14:06 541简单的增删查改spring + mybatis + ... -
java调用存储过程并封装成map
2016-10-21 10:20 1936public List<Map<String , ... -
javaweb工程服务器配置域名访问
2016-02-03 16:28 32091、申请域名: 例:www.baidu.com 2、apa ... -
java调用webservice接口
2016-01-19 11:56 0package com.mvc.controller; ... -
maven搭建javaweb项目
2015-06-19 15:08 540见链接:http://www.cnblogs.com/xdp- ... -
java数据库连接池操作
2015-06-19 13:57 714一、应用程序直接获取 ... -
BigDecimal在实际项目的应用及遇到的问题
2015-01-28 11:46 673BigDecimal在实际项目的应用及遇到的问题 2013-0 ... -
java操作系统的进程
2014-06-13 14:07 7251、windows下调用dos命令,很简单的java代码: ... -
DB2、oracle和mysql语句的日期对比及字符串截取
2014-06-13 10:07 3363一、在数据库查询中,我们会经验遇到日期的对比,在常用数据库中, ... -
dwr基于struts2和spring2.5的配置详解
2014-03-27 14:08 1180第一步:web.xml配置; <servlet> ... -
java字符串过滤回车和换行符
2014-01-14 15:20 22913//第一种方式 import java.util.reg ... -
oracle常用功能语句
2013-12-23 14:25 717<!--新建用户--> create ... -
java获取随机数
2013-12-17 16:50 17151、获取num个不大于range的随机数 /** * ... -
基于数据库lucence 3.6.2多字段配合多关键字的模糊查询
2013-12-06 10:52 1101一、首先是从数据库查询数据并添加索引 /** * 写 ... -
db2日期对比的sql,并读取xml字段数据
2013-12-06 10:47 819date(char(XML2CLOB( xmlquery( ... -
java打开拼接的rul链接并带上参数
2013-11-26 09:50 1059//判断当前系统是否支持Java AWT Desktop ... -
java调用windows应用程序
2013-11-20 11:35 789public static void main(Strin ... -
hibernate的hql查询多对多查询
2013-11-08 12:04 3986在hibernate的hql查询中,假如说分组信息与试 ... -
java的oracle数据库用hql语句(orcal)对日期进行范围对比
2013-09-22 17:12 4254/**取当前时间30分钟前的*/ Date date = ...
相关推荐
拦截器是基于AOP(面向切面编程)的概念设计的,它们形成一个链,每个拦截器按照定义的顺序依次执行。当请求到达Action时,Struts2会调用这个链上的所有拦截器,然后才执行实际的动作方法。通过在拦截器中实现权限...
在Struts2中,拦截器是基于AOP(面向切面编程)的概念设计的,它们在Action调用前后执行,可以添加额外的功能,如日志记录、事务管理、权限验证等。对于权限控制,拦截器可以在请求到达Action之前检查用户的登录状态...
Struts2的拦截器是基于Java的Servlet Filter机制实现的,但是更加强大和灵活。 2. **拦截器链**:在Struts2中,多个拦截器可以形成一个拦截器链,每个拦截器按照定义的顺序依次执行。如果所有拦截器都允许Action...
在Struts2中,拦截器是基于Java的动态AOP(面向切面编程)实现的,它可以在Action调用前后插入额外的逻辑,比如日志记录、权限验证、事务管理等。拦截器通过配置文件或者注解与Action关联,形成一个拦截器栈,每个...
Struts2的拦截器基于AOP(面向切面编程)思想,允许开发者在不修改原有代码的情况下添加额外的功能。 在Struts2中,拦截器是基于Java的动态代理机制实现的。当你定义一个拦截器时,实际上创建了一个实现了`...
### Struts2 Interceptor 拦截器详解 #### 一、概述 在现代Web开发中,特别是基于Java的Web应用程序开发中,Struts2框架因其简洁性和强大的扩展能力而备受青睐。Struts2框架的核心设计理念之一是MVC(Model-View-...
Struts2 拦截器是基于Java的Servlet Filter设计模式的一种实现,它提供了一种在Action执行前后插入额外逻辑的方式。拦截器是Struts2框架的核心组件之一,用于增强应用的功能,比如权限验证、日志记录、数据校验等。 ...
Struts2 框架是 SSH2 架构的重要组成部分,提供了一种强大的MVC(模型-视图-控制器)设计模式实现。...这种基于拦截器的登录验证方法是 SSH2 框架中常见且实用的实践,对于开发大型企业级应用非常有价值。
Struts拦截器是Java Web开发中的重要概念,尤其在基于Struts 2框架的应用中扮演着核心角色。这个"struts拦截器的例子"提供了一个学习和理解拦截器工作原理的起点,非常适合对这一主题感兴趣的初学者。 Struts 2框架...
拦截器是Struts2的核心组件之一,它基于AOP(面向切面编程)的概念,为框架提供了高度的灵活性和可扩展性。以下是关于Struts2拦截器的基础知识的详细说明: 1. **拦截器的定义与作用**: - 拦截器是Struts2框架中...
拦截器是基于AOP(面向切面编程)理念设计的,它们在Action调用前后执行,形成一个拦截链。每个拦截器可以看作是一个独立的功能模块,如日志记录、事务处理或权限验证等。通过配置,我们可以决定拦截器的执行顺序,...
总结来说,Struts2拦截器是实现业务逻辑增强和控制流程的重要组件,它基于Java的动态代理机制。通过在Action执行前后插入自定义代码,拦截器使得我们可以方便地进行如日志记录、权限验证等操作,而无需直接修改...
本文将详细解析Struts2中的拦截器(Interceptor)、CRUD操作以及Action的执行流程。 首先,让我们聚焦于Struts2的拦截器机制。拦截器是Struts2的核心组件,它们在Action执行前后运行,提供了AOP(面向切面编程)的...
拦截器是Struts2框架的一个重要组成部分,它们是基于责任链模式实现的,可以看作是过滤器的扩展,提供了更多的控制和灵活性。在请求到达Action之前,一系列的拦截器会按照配置的顺序依次执行,之后在Action执行完毕...
其中,拦截器(Interceptor)是Struts2中的一个关键特性,用于扩展框架的功能,实现诸如事务管理、权限控制、输入验证等功能。 #### Struts2的处理流程 1. **客户端请求**: 当客户端发起HTTP请求时,请求首先到达...
### Struts2拦截器权限设置 #### 背景与目的 在开发Web应用程序时,权限控制是一项重要的功能。它确保只有经过验证的用户才能访问特定的资源或执行某些操作。Struts2作为一款流行的Java Web框架,提供了丰富的功能...
在本文中,我们将深入探讨如何实现Struts2与Spring的集成,以及利用拦截器来增强应用的功能。 首先,Struts2 是一个基于MVC设计模式的开源Web框架,它提供了强大的控制器层,使得开发者可以更方便地处理HTTP请求和...
### Struts2内置拦截器简介 #### 一、概述 Struts2框架是Apache软件基金会下的一个开源项目,它提供了一种基于MVC(Model-View-Controller)设计模式的Web应用开发框架。Struts2的核心是拦截器(Interceptor)机制...
Struts 2.0 是一个基于MVC设计模式的Java Web框架,它的核心功能之一是拦截器(Interceptor),这是实现业务逻辑控制和增强应用程序功能的重要组件。在Struts 2中,拦截器扮演着中间人的角色,它们在Action调用前后...
最后,"struts2拦截器详解之二:深入理解struts2拦截器机制.txt"和"Struts2自定义拦截器.txt"文件详细阐述了Struts2的拦截器机制。拦截器是Struts2的核心特性之一,它们是围绕Action执行的一系列拦截动作,可以在...