亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? requestcontext.java~4~

?? java系統通用框架 很實用的東東 一般人都看的懂,
?? JAVA~4~
?? 第 1 頁 / 共 2 頁
字號:
/*****************************************************************************
* (C) Copyright 2004 。
* 保留對所有使用、復制、修改和發布整個軟件和相關文檔的權利。
* 本計算機程序受著作權法和國際公約的保護,未經授權擅自復制或
* 傳播本程序的全部或部分,可能受到嚴厲的民事和刑事制裁,并
* 在法律允許的范圍內受到最大可能的起訴。
*/

 /*****************************************************************************
  * @作者:Golden Peng
  * @版本: 1.0
  * @時間: 2002-10-08
  */
 /*****************************************************************************
  * 修改記錄清單
  * 修改人  :
  * 修改記錄:
  * 修改時間:
  * 修改描述:
  *
  */
package com.corp.bisc.ebiz.base;

import java.util.*;
import java.sql.*;
import javax.servlet.http.*;
import java.io.*;
import com.corp.bisc.ebiz.exception.*;
import com.corp.bisc.ebiz.member.*;
import com.corp.bisc.ebiz.util.*;
import com.corp.bisc.ebiz.security.*;
/**
 * Insert the type's description here.
 * Creation date: (2002-5-13 12:30:08)
 * @author: Administrator
 */
public class RequestContext extends ObjectBase
{
	private static int connectionInUse = 0;
	protected HttpServletRequest request = null;
	protected HttpServletResponse response = null;
	protected ActionDef action;
	protected ConfigRepository config;


	private TransactionManager transMgr = null;
	private AuthenticateProvider authProvider = null;

	private Hashtable hashConnection = new Hashtable();
	private Connection transConnection = null;


	private CmdResult result = new CmdResult("*");
	protected int curCommand = 0;
	private HttpSession session = null;

	private String appName;
	private Hashtable files;
	private Hashtable parameters;
	private String lang = null;

	private int transactionStatus = TransactionManager.TRANSACTION_CONTINUE;

	private LogManager logManager = LogManager.getManager();

	protected User member = null;

	private boolean ifmultipart = false;

	private boolean pki_signed = true;
protected RequestContext(HttpServletRequest _req , HttpServletResponse _res)
{
	request = _req;
	response = _res;
}
public void abortTransaction()
{
	transactionStatus = TransactionManager.TRANSACTION_ROLLBACK;
}
protected void cleanup()
{
	enter("cleanup()");

	/*
	TransactionManager mgr = getTransManager();

	if (mgr.isInTransaction())
	{
		try
		{
			mgr.rollbackDirectly();
		}
		catch(Exception e)
		{
			log.error("Cleanup the uncompleted transaction and failed" , e);
		}
	}
	*/
	if (hashConnection.size() != 0)
	{
		log.warn("DB Connection leak was found!!!");
		int nCount = 0;
		for(Enumeration e = hashConnection.elements(); e.hasMoreElements() ; )
		{
			Connection conn = (Connection)e.nextElement();
			nCount = connectionInUse - 1;
			connectionInUse--;
			log.info("The closed connection id is:->" + conn + "---connection count is:->" + nCount);
			config.getConnHandler().closeConnection(conn);
		}

		hashConnection.clear();
	}

	leave("cleanup()");
}
public void commitTransaction()
{
	transactionStatus = TransactionManager.TRANSACTION_COMMIT;
}
	public Connection freeDBConnection(Connection conn)
	{
		enter("freeDBConnection(Connection)");

		freeDBConnection(conn,null);

		leave("freeDBConnection(Connection)");

		return null;
	}
	public Connection freeDBConnection(Connection conn,String dsName)
	{
		enter("freeDBConnection(Connection)");

		/*
		//判斷
		ActionDef action = getActionDefinition();
		if(action.getCommandCount() <= 1){
			hashConnection.remove(conn);
			config.getConnHandler().closeConnection(conn);
		}else{
			CommandMap currCmd = action.getCurrentCommandMap();
			CommandMap nextCmd = action.getNextCommandMap();
			if(nextCmd != null){

				String currId = currCmd.getTransId();
				String nextId = nextCmd.getTransId();
				if(!((currId == null)&&(nextId == null))){

					if((currId == null)||(nextId == null)){
						hashConnection.remove(conn);
						config.getConnHandler().closeConnection(conn);
					}else if(!currId.equalsIgnoreCase(nextId)){
						hashConnection.remove(conn);
						config.getConnHandler().closeConnection(conn);
					}
				}
				action.movePrevious();

			}else{
				hashConnection.remove(conn);
				config.getConnHandler().closeConnection(conn);
			}

		}
		*/
		/*
		ActionDef action = getActionDefinition();
		String accessKey = null;
		CommandMap currCmd = action.getCurrentCommandMap();
		if(currCmd == null)
		{
			//this is the last free db connection in servlet logging.
			accessKey = (dsName == null) ? "1" : dsName + ".1";
			hashConnection.remove(accessKey);
			if(currCmd.isTransEnd())
			{
				if(dsName == null)
					hashConnection.remove(conn);
				else
					hashConnection.remove(dsName);
				config.getConnHandler().closeConnection(conn);
			}
		}
		else
		{
		}
		*/
		ActionDef action = getActionDefinition();
		String accessKey = null;
		CommandMap currCmd = action.getCurrentCommandMap();

		int nCount = connectionInUse - 1;
		if(currCmd == null)
		{
			//this is the last free db connection in servlet logging.
			accessKey = (dsName == null) ? "1" : dsName + ".1";

			info("Close connection with accessKey:->" + accessKey);
			hashConnection.remove(accessKey);
			info("The closed connection id is:->" + conn + "---connection count is:->" + nCount);
			connectionInUse--;
			config.getConnHandler().closeConnection(conn);
		}
		else
		{
			if(dsName == null)
				dsName = "";

			accessKey = (currCmd.getTransId() == null) ? dsName + ".1" : dsName + "." + currCmd.getTransId();
			/*
			//we will close the connection if its not a default connection and is transaction end.
			if(currCmd.isTransEnd() && (!accessKey.equals("1")))
			{
				info("Close connection with accessKey:->" + accessKey);
				hashConnection.remove(accessKey);
				info("The closed connection id is:->" + conn);
				config.getConnHandler().closeConnection(conn);
			}
			*/
			//we will close the connection if it is transaction end.
			if(currCmd.isTransEnd())
			{
				info("Close connection with accessKey:->" + accessKey);
				hashConnection.remove(accessKey);
				info("The closed connection id is:->" + conn + "---connection count is:->" + nCount);
				connectionInUse--;
				config.getConnHandler().closeConnection(conn);
			}
		}

		leave("freeDBConnection(Connection)");

		return null;
	}
protected ActionDef getActionDefinition()
{
	return action;
}
	public AuthenticateProvider getAuthProvider()
	{
		AuthenticateProvider authProvider = config.getAuthProvider();
		return authProvider;
	}
public Object getBinaryParameterValue(String paramName) throws InvalidParameterException
{
	Object result = null;
	Vector vect = (Vector) parameters.get(paramName);
	if(vect == null)
		return null;
	String value =(String) vect.elementAt(0);
	ParamChecker checker = action.getParamChecker(paramName);

	if (checker == null)
		result = value;
	else
		result = checker.getValidValue(value);
	return result;
}
public Object[] getBinaryParameterValues(String paramName)
    throws Exception {
    System.out.println( "In Request Context.getBinaryParameterValues.........");
    Vector vect = null;
    String[] result = null;

    vect = (Vector) parameters.get(paramName);
    if (vect == null)
        return null;

    Object[] values = vect.toArray();
    ParamChecker checker = action.getParamChecker(paramName);

    if (values == null)
        return null;
    int len = values.length;

	System.out.println( "Parameter Names:" + paramName);
    if (checker == null){
		System.out.println( "Parameter number:" + len );
	    result = new String[len];
		System.out.println( "Don't check.........");
	    for (int i = 0; i < len; i++) {
            String value = null ;
            if ( values[i] instanceof String ){
	            System.out.println( "Input data is String ............" );
	            result[i] = (String) values[i];
            }
            else{
	            System.out.println( "Input data isn't String ............" );
            }
        }
//		result = values;
    }
    else {
		System.out.println( "Checking.........");
	    result = new String[len];
        for (int i = 0; i < len; i++) {
            String value = (String) values[i];
            result[i] = value;
//            result[i] = checker.getValidValue(value);
        }
    }
	System.out.println( "End Request Context.getBinaryParameterValues.........");
	return result;
    }
/**
 * 此處插入方法描述。
 * 創建日期:(2002-7-1 21:04:27)
 * @return java.lang.String
 */
public String getClientCert() {
	String result = null;
	try{
		result = (String)request.getSession().getAttribute("clientCert");
	}catch(Exception e){
		System.out.println(e);
	}
	return result;
}
	protected CmdResult getCmdResult()
	{
		return result;
	}
	public int getCommandName()
	{
		return curCommand;
	}
	public Connection getDBConnection() throws SQLException
	{
		enterleave("getDBConnection()");

		return getDBConnection(null);
	}
	public Connection getDBConnection(String dsName) throws SQLException
	{
		enter("getDBConnection(String)");

		//此段程序利用了TransactionManager的概念,可似乎不完善
		//暫時改成只是利用cmdmap 的transaction id來進行判斷
		//日后對事務處理需要重新考慮
		/*
		TransactionManager myTransMgr = getTransManager();
		Connection conn = null;

		boolean isTransConnection = myTransMgr.isInTransaction() && !myTransMgr.isXATransaction;

		if (isTransConnection && transConnection != null)
		{
			conn = transConnection;
		}

		if (conn == null)
		{
			ConnPoolHandler handler = config.getConnHandler();

			if (dsName == null)
				conn = handler.getConnection();
			else
				conn = handler.getConnection(dsName);

			if (isTransConnection)
				transConnection = conn;

			hashConnection.put(conn , conn);
		}
		*/
		/*
		Connection conn = null;
		ActionDef action = getActionDefinition();
		CommandMap currCmd = action.getCurrentCommandMap();
		//if(!currCmd.isTransBegin()){
			if(transConnection != null){
				if(!transConnection.isClosed())
					conn = transConnection;
				else
					transConnection = null;
			}
		//}
		if (conn == null)
		{
			ConnPoolHandler handler = config.getConnHandler();

			if (dsName == null)
				conn = handler.getConnection();
			else
				conn = handler.getConnection(dsName);

			if (currCmd.isTransBegin())
				transConnection = conn;
			if(dsName == null)
				hashConnection.put(conn , conn);
			else
				hashConnection.put(dsName,conn);
		}
		*/

		Connection conn = null;
		ActionDef action = getActionDefinition();
		CommandMap currCmd = action.getCurrentCommandMap();
		String accessKey = (currCmd == null || currCmd.getTransId() == null) ? "1" : currCmd.getTransId();

		//use transid and dsName to build accessKey
		accessKey = (dsName == null) ? "." + accessKey : dsName + "." + accessKey;
		conn = (Connection)hashConnection.get(accessKey);
		ConnPoolHandler handler = config.getConnHandler();
		if(conn == null || conn.isClosed())
		{
			if(conn == null)
				info("Get a new connection with accessKey:->" + accessKey);
			else
				info("Get a new connection because the cache has been closed. accessKey:->" + accessKey);
			if(dsName == null)
				conn = handler.getConnection();
			else
				conn = handler.getConnection(dsName);

			hashConnection.put(accessKey, conn);
			int nCount = connectionInUse + 1;
			info("The connection id is:->" + conn + "--- Connection in use is:->" + nCount);
			connectionInUse++;
		}
		else
			info("use a cache connection with accessKey:->" + accessKey);

		leave("getDBConnection(String)");

		return conn;
	}
/**
 * 此處插入方法描述。
 * 創建日期:(2002-5-22 19:43:25)
 * @param name java.lang.String
 * @param file java.io.File
 */
public FileObject getFile(String name) {

	FileObject file = null;
	if(files != null)
		file = (FileObject) files.get(name);
	return file;
}
/**
 * 此處插入方法描述。
 * 創建日期:(2002-5-22 20:17:50)
 * @return java.util.Hashtable
 */
public Enumeration getFileParaNames() {

	if(files == null)
		return null;
	return files.keys();
}
public InputStream getInputStream() throws IOException
{
	return request.getInputStream();
}
public String getLanguage()
{
	if (lang == null)
	{
		String localeStr = null;
		Cookie cookie[] = request.getCookies();
		LangManager langMgr = config.getLangManager();

		if (cookie.length != 0)
		{
			for (int i = 0; i < cookie.length; i++)
			{
				if (cookie[i].getName().equalsIgnoreCase("language"))
					localeStr = cookie[i].getValue();
			}
		}

		if (localeStr == null)
		{
			localeStr = request.getHeader("Accept-Language");
			if (localeStr != null)
			{
				StringTokenizer st = new StringTokenizer(localeStr, ",");

				while(st.hasMoreElements())
				{
					localeStr = (String) st.nextElement();
					if (localeStr != null)
					{
						localeStr = localeStr.trim();

						if (langMgr.getLangConfig(localeStr) != null)
							break;
					}
				}
			}
		}

		if (localeStr == null)
			localeStr = langMgr.getDefaultLang();

		lang = localeStr;
	}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99精品久久只有精品| 精品一区二区三区久久| 欧美精品日韩一区| 国产宾馆实践打屁股91| 日本系列欧美系列| 一区二区三区在线视频免费观看 | 一本色道综合亚洲| 精品夜夜嗨av一区二区三区| 亚洲一区二区视频| 国产农村妇女精品| 欧美一区二区三区小说| 日本高清不卡视频| 丰满少妇在线播放bd日韩电影| 日本中文字幕一区二区视频| 亚洲欧美色一区| 日本一区二区久久| 久久亚洲春色中文字幕久久久| 欧美日韩高清一区二区不卡| 一本久道中文字幕精品亚洲嫩| 国产精品一二三区| 国内精品伊人久久久久av影院| 婷婷综合另类小说色区| 亚洲一二三四在线| 亚洲精品伦理在线| 亚洲男帅同性gay1069| 亚洲综合丝袜美腿| 亚洲欧美乱综合| 国产精品福利一区| 中日韩av电影| 欧美高清在线视频| 国产精品久久久久久久久动漫 | 亚洲免费在线视频| 国产精品久久久久久一区二区三区| 久久精品一区四区| 久久久久久免费网| 国产欧美一区二区在线| 久久精品亚洲精品国产欧美kt∨| 26uuu色噜噜精品一区| 久久综合五月天婷婷伊人| 日韩一区二区三免费高清| 5858s免费视频成人| 欧美肥妇毛茸茸| 日韩一区二区三区在线观看| 日韩一区二区电影| 精品国产一区二区精华| 日韩欧美精品在线| 精品粉嫩超白一线天av| 久久久久久久久蜜桃| 国产精品日韩精品欧美在线| 国产精品久久网站| 亚洲色图丝袜美腿| 亚洲一区在线看| 午夜精品在线看| 男女男精品视频| 精品亚洲国产成人av制服丝袜| 国产一区二区三区最好精华液| 国产高清久久久| 93久久精品日日躁夜夜躁欧美| 一本在线高清不卡dvd| 欧美性色综合网| 91麻豆精品国产91久久久久久久久 | 欧美四级电影在线观看| 91精品视频网| 久久久精品国产免大香伊| 中文字幕 久热精品 视频在线| 亚洲天天做日日做天天谢日日欢| 一区二区久久久| 亚洲第一主播视频| 韩国精品在线观看| 99久久久久久| 欧美精品v日韩精品v韩国精品v| 精品理论电影在线观看 | 精品久久久久久综合日本欧美| 欧美www视频| 亚洲欧洲精品成人久久奇米网| 亚洲免费在线播放| 免费不卡在线视频| 国产成人精品免费一区二区| 欧美视频在线一区二区三区| 欧美videossexotv100| 亚洲国产精品高清| 亚洲成av人片一区二区三区 | 岛国精品在线播放| 欧美日韩亚洲综合在线 | 久久综合资源网| 亚洲精品久久久蜜桃| 蜜桃av一区二区在线观看| 国产精品一区二区三区99| 欧洲亚洲国产日韩| 久久一二三国产| 亚洲高清在线视频| 国产精品一区一区三区| 精品视频123区在线观看| 欧美国产乱子伦| 午夜精品成人在线| 成人夜色视频网站在线观看| 欧美一区二区女人| 亚洲精品免费看| 国产传媒一区在线| 91精品欧美一区二区三区综合在| 最新高清无码专区| 国产精品一品二品| 69av一区二区三区| 亚洲另类在线制服丝袜| 国产精品18久久久久久vr| 欧美亚洲国产一区二区三区va| 国产欧美日韩亚州综合| 免费观看久久久4p| 欧美做爰猛烈大尺度电影无法无天| 久久精品视频网| 麻豆一区二区三| 51精品国自产在线| 亚洲精品欧美激情| 欧美理论电影在线| 亚洲三级在线观看| 成人少妇影院yyyy| 日韩欧美激情一区| 日韩黄色片在线观看| 欧洲精品一区二区| 国产精品二区一区二区aⅴ污介绍| 美国三级日本三级久久99| 成人动漫av在线| 国产嫩草影院久久久久| 国产精品综合二区| 精品88久久久久88久久久| 蜜桃视频在线观看一区二区| 欧美色视频在线| 亚洲一区二区三区中文字幕| 99精品久久99久久久久| 中文字幕一区av| 成人av集中营| 国产精品护士白丝一区av| 国产99久久久国产精品潘金| 欧美激情一区在线观看| 国产老女人精品毛片久久| 精品91自产拍在线观看一区| 久久av中文字幕片| 日韩欧美一区在线观看| 蜜臀a∨国产成人精品| 欧美一区二区在线播放| 天天操天天干天天综合网| 欧美浪妇xxxx高跟鞋交| 日韩精品一级中文字幕精品视频免费观看| 在线观看91精品国产入口| 伊人开心综合网| 欧美日韩美女一区二区| 午夜伦理一区二区| 欧美一级夜夜爽| 久久福利资源站| 国产亚洲精久久久久久| www.一区二区| 亚洲最色的网站| 欧美二区三区91| 久久99九九99精品| 国产欧美日韩三级| 在线免费一区三区| 天堂在线亚洲视频| 精品奇米国产一区二区三区| 国产一区二区电影| 中文字幕精品一区二区三区精品| aa级大片欧美| 天天影视网天天综合色在线播放| 日韩一区二区麻豆国产| 国产乱淫av一区二区三区| 国产精品欧美一区二区三区| 色乱码一区二区三区88| 日韩国产高清影视| 久久久777精品电影网影网| 99视频精品全部免费在线| 亚洲国产精品尤物yw在线观看| 5858s免费视频成人| 成人综合在线观看| 亚洲成av人片观看| 亚洲bt欧美bt精品777| 久久综合网色—综合色88| 91小视频免费观看| 日本特黄久久久高潮| 国产日韩欧美麻豆| 欧美精品三级在线观看| 国产91露脸合集magnet| 亚洲福利一二三区| 欧美激情一区二区三区不卡| 欧美中文字幕一区| 国产美女精品在线| 性久久久久久久久久久久| 国产欧美综合在线观看第十页| 欧美色图12p| 不卡视频免费播放| 免费看日韩精品| 一区二区三区蜜桃| 国产日韩一级二级三级| 欧美高清www午色夜在线视频| 成人黄色大片在线观看| 日本中文字幕一区二区视频 | 国产一区二区三区在线观看免费| 亚洲免费在线播放| 亚洲精品一区二区三区蜜桃下载 | 国产亚洲精品资源在线26u| 欧美午夜一区二区三区| 国产91丝袜在线18|