⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 aclaction.java

📁 采用比较流行的Struts2+spring+hibernate框架
💻 JAVA
字号:
package com.struts2.action;

import org.apache.struts2.ServletActionContext;

import com.oa.PagerModel;
import com.oa.SystemContext;
import com.oa.manager.ModuleManager;
import com.oa.manager.RoleManager;
import com.oa.manager.UserManager;
import com.oa.model.ACL;

@SuppressWarnings("serial")
public class AclAction extends BaseAction {
	
	private ModuleManager moduleManager;
	
	private UserManager userManager;
	
	private RoleManager roleManager;
	
	private String principalType;
	
	private int principalSn;

	public String getPrincipalType() {
		return principalType;
	}

	public void setPrincipalType(String principalType) {
		this.principalType = principalType;
	}

	public int getPrincipalSn() {
		return principalSn;
	}

	public void setPrincipalSn(int principalSn) {
		this.principalSn = principalSn;
	}
	
	//打开ACL授权界面
	//接受参数:principalType、principalSn
	//输出参数:模块列表、角色或用户
	@Override
	public String execute() throws Exception {
		System.out.println("--------------------");
		
		//如果主体类型是角色或用户
		if(ACL.TYPE_ROLE.equals(principalType)) {
			ServletActionContext.getRequest().setAttribute("role", roleManager.findRole(principalSn));
		} else if(ACL.TYPE_USER.equals(principalType)) {
			ServletActionContext.getRequest().setAttribute("user", userManager.findUser(principalSn));
		} else {
			throw new RuntimeException("不合法的主体类型");
		}
		
		//把类型传到页面判断
		ServletActionContext.getRequest().setAttribute("type", principalType);
		//把编号传到页面
		ServletActionContext.getRequest().setAttribute("sn", principalSn);
		//获取所有顶级模块列表
		SystemContext.setOffset(0);
		SystemContext.setPagesize(Integer.MAX_VALUE);
		PagerModel pm = moduleManager.searchModules(0);
		
		ServletActionContext.getRequest().setAttribute("modules", pm.getList());
		
		return SUCCESS;
	}

	public void setRoleManager(RoleManager roleManager) {
		this.roleManager = roleManager;
	}

	public void setUserManager(UserManager userManager) {
		this.userManager = userManager;
	}

	public void setModuleManager(ModuleManager moduleManager) {
		this.moduleManager = moduleManager;
	}
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -