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

📄 authenticationtag.java

📁 这是《Struts网络编程实例》一书zhogn 的源代码部分
💻 JAVA
字号:
package org.ithinking.strutsExample.util;

import javax.servlet.jsp.tagext.TagSupport;

import org.ithinking.strutsExample.entity.Userinfo;

public class AuthenticationTag extends TagSupport{
	//当action为修改操作时,操作的用户对象
	Integer userId;
	//权限校验的动作,包括:new,delete,modify
	String action;
	public void setUserId(Integer id) {
		userId = id;
	}
	public void setAction(String action) {
		this.action = action;
	}
	 public int doStartTag()
	    {
		 	if(action==null||action.trim().length()<=0)
		 	{
		 		return SKIP_BODY;
		 	}
		 	//只有administrator具有新增和删除用户的权限
		 	if(action.equals("new")||action.equals("delete"))
		 	{
		 		Userinfo userInfo=(Userinfo)pageContext.getSession().getAttribute(SiteContance.CURRENT_USER);
		 		if(userInfo!=null)
		 		{
		 			if(userInfo.getUserloginid().equals("administrator"))
		 			{
		 				return this.EVAL_BODY_AGAIN;
		 			}
		 		}
		 	}
		 	//administrator用户可以修改所有用户的信息,当前登陆用户只能修改自己的信息
		 	if(action.equals("modify"))
		 	{
		 		Userinfo userInfo=(Userinfo)pageContext.getSession().getAttribute(SiteContance.CURRENT_USER);
		 		if(userInfo!=null)
		 		{
		 			if(userInfo.getUserloginid().equals("administrator"))
		 			{
		 				return this.EVAL_BODY_AGAIN;
		 			}
		 			else
		 			{
		 				if(userId!=null)
		 				{
		 					if(userInfo.getId().equals(userId))
		 					{
		 						return this.EVAL_BODY_AGAIN;
		 					}
		 				}
		 			}
		 		}
		 	}
		 	return SKIP_BODY;
	    }
}

⌨️ 快捷键说明

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