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

📄 baseaction.java

📁 本代码是一个权限管理系统源代码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package com.seavision.PermissionManage.common;

/**
 * 
 * @author  xutao.huang 
 * 
 * @version  1.0
 */
import java.math.BigDecimal;
import java.util.Vector;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import com.seavision.PermissionManage.help.MessageBeanUtil;


public class BaseAction extends Action {

	private static final Log log =
		LogFactory.getLog(BaseAction.class);
	
	
	public static final String NUMBER = "-.0123456789";

	public static final String INTNUMBER = "-0123456789";

	public static final String POSITIVEINTNUMBER = "0123456789";

	public static boolean printFlag = true; //打印控制标志

	public static int encodingFlag = 2; //编码控制值

	private String className = ""; //类名

	ParamChecking pc = new ParamChecking();

	public HttpServletRequest request = null;

	public HttpSession session = null;

	/*
	 * 
	 *  这个方法是action判断用户是否登录. 调用该方法.如果返回true说明用户已经登录
	 * 如果返回的是false 说明用户没登录或者长时间没进行操作..
	 * 
	 * */

	public  boolean  checkUserIsLogin() {

		boolean result = false;

		if (this.check(session.getAttribute("loginUserBean"))) {
			//如果调用方法返回的是true说明这个对象在session中不存在
		
			
			result = true;;

		}

		return result;

	}

	public boolean check(String param) {
		if (param == null || param.trim().length() == 0) {
			return true;
		} else {
			return false;
		}
	}
	public Object requestGetAttribute(String paramName) {

		Object obj = this.request.getAttribute(paramName);

		if (obj instanceof String) {
			String paramValue = (String) obj;

			paramValue = this.exchangeStrParam(paramValue);

			this.print("从 session 接受参数 - " + paramName + " 为 : " + paramValue);

			return paramValue;
		} else if (obj instanceof String[]) {
			String[] paramValue = (String[]) obj;

			paramValue = this.exchangeStrParam(paramValue);

			if (paramValue != null) {
				for (int i = 0; i < paramValue.length; i++)
					this.print("从 session 接受数组参数 - " + paramName + "[" + i + "] 为 : " + paramValue[i]);
			}

			return paramValue;
		} else {
			return obj;
		}
	}

	public boolean check(String[] param) {
		if (param == null || param.length == 0) {
			return true;
		} else {
			return false;
		}
	}

	public boolean check(Object obj) {
		if (obj == null)
			return true;
		else
			return false;
	}

	public String[] trim(String[] param) {
		for (int i = 0; i < param.length; i++) {
			param[i] = param[i].trim();
		}

		return param;
	}

	public ActionForward moveTo(String messageType, String message, String className, String forwardName, HttpSession session, ActionMapping mapping) {
		StringBuffer sb = new StringBuffer();

//		request.setAttribute("messageType", messageType);
		request.setAttribute("message", message);
		
		MessageBeanUtil.sendMessage(request,message,messageType);

		sb.append("\n[" + className + "] messageType : " + messageType + "\n");
		sb.append("detailMessage : " + message + "\n");
		sb.append("返回页 : " + forwardName + "\n");
		sb.append("[" + className + "] 结束操作" + "\n");

		print(sb.toString());

		return mapping.findForward(forwardName);
	}

	public ActionForward moveToError(String message, String forwardName, ActionMapping mapping) {
		StringBuffer sb = new StringBuffer();

		this.setAttribute2("message", message);

		MessageBeanUtil.sendMessage(request,message,true);

		sb.append("[" + this.className + "] 执行结果 : Error \n");
		sb.append("详细信息 : " + message + "\n");
		sb.append("返回页 : " + forwardName + "\n");
		sb.append("[" + this.className + "] 结束操作" + "\n");

		this.print(sb.toString());

		return mapping.findForward(forwardName);
	}

	public ActionForward moveToFailure(String message, String forwardName, ActionMapping mapping) {
		StringBuffer sb = new StringBuffer();

		this.setAttribute2("message", message);

		MessageBeanUtil.sendMessage(request,message,true);

		sb.append("[" + this.className + "] 执行结果 : failure \n");
		sb.append("详细信息 : " + message + "\n");
		sb.append("返回页 : " + forwardName + "\n");
		sb.append("[" + this.className + "] 结束操作" + "\n");

		this.print(sb.toString());

		return mapping.findForward(forwardName);
	}

	public ActionForward moveToSuccess(String forwardName, ActionMapping mapping) {
		StringBuffer sb = new StringBuffer();

		sb.append("[" + this.className + "] 执行结果 : success \n");
		sb.append("返回页 : " + forwardName + "\n");
		sb.append("[" + className + "] 结束操作" + "\n");

		this.print(sb.toString());

		return mapping.findForward(forwardName);
	}

	public void print(String actionName, String containerName, String interName, Vector params) {
		StringBuffer sb = new StringBuffer();

		sb.append("[ " + actionName + " 调用 " + containerName + " 接口 " + interName + "( ");

		for (int i = 0, j = params.size(); i < j; i++) {
			if (i == 0)
				sb.append(params.get(i));
			else
				sb.append(", " + params.get(i));
		}
		sb.append(" ) ]");

		this.print(sb.toString());
	}

	public void print(String s) {
		if (printFlag){
		
			//System.out.println(s);
			log.debug(s);
		}
	}

	public void print(int i) {
		this.print(i + "");
	}

	public void print(Float f) {
		this.print(f + "");
	}

	public void print(boolean b) {
		this.print(b + "");
	}

	public void print(String s[]) {
		for (int i = 0; i < s.length; i++) {
			this.print(s[i] + "  ");
		}

		this.print("");
	}

	public void print(String arrayName, String s[]) {
		for (int i = 0; i < s.length; i++) {
			this.print(arrayName + "[" + i + "] : " + s[i] + "\n");
		}
	}

	public void setPrintFlag(boolean flag) {
		printFlag = flag;
	}
	/**
	 * 判断字符串是否为整数
	 * @param param 待判断字符串
	 * @return true 是字符串  false 不是字符串
	 */
	public boolean isNum2(String param) {
		//为空打回
		if (this.check(param))
			return false;

		System.out.println("param=====:"+param.indexOf("-"));
		//整句出现 - 号打回
		if ((param.indexOf("-") == 0))
			return false;
		//整句出现两个 . 号打回
		if ((param.indexOf(".") != param.lastIndexOf(".")))
			return false;

		//参数长度为1时以 - 号或 . 号打回
		if (param.length() == 1) {
			if (param.substring(0).equalsIgnoreCase("-") || param.substring(0).equalsIgnoreCase("."))
				return false;
		}

		//参数长度大于2时以 - 号开始,但以 . 号跟随打回,加长度判断避免越界异常
		if (param.length() >= 2) {
			if (param.startsWith("-") && param.substring(1, 2).equalsIgnoreCase("."))
				return false;
		}

		//判断是否以 . 开始,- 未出现在第一位置,不在数字界限内,错误打回
		for (int i = 0; i < param.length(); i++) {
			String sNum = param.substring(i, i + 1);

			if (i == 0 && sNum.equals("."))
				return false;

			if (i != 0 && sNum.equals("-"))
				return false;

			int flag = NUMBER.indexOf(sNum);

			if (flag == -1)
				return false;
		}

		return true;
	}
	/**
	 * 判断字符串是否为数字
	 * @param param 待判断字符串
	 * @return true 是字符串  false 不是字符串
	 */
	public boolean isNum(String param) {
		//为空打回
		if (this.check(param))
			return false;

		//整句出现两个 - 号或两个 . 号打回
		if ((param.indexOf("-") != param.lastIndexOf("-")) || (param.indexOf(".") != param.lastIndexOf(".")))
			return false;

		//参数长度为1时以 - 号或 . 号打回
		if (param.length() == 1) {
			if (param.substring(0).equalsIgnoreCase("-") || param.substring(0).equalsIgnoreCase("."))
				return false;
		}

		//参数长度大于2时以 - 号开始,但以 . 号跟随打回,加长度判断避免越界异常
		if (param.length() >= 2) {
			if (param.startsWith("-") && param.substring(1, 2).equalsIgnoreCase("."))
				return false;
		}

		//判断是否以 . 开始,- 未出现在第一位置,不在数字界限内,错误打回
		for (int i = 0; i < param.length(); i++) {
			String sNum = param.substring(i, i + 1);

			if (i == 0 && sNum.equals("."))

⌨️ 快捷键说明

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