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

📄 dataaccess.java

📁 jsp考勤
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
			String key = "";
			String whe = "";

			// 峏怴傪峴偆僨乕僞偺where暥傪嶌惉偟傑偡丅
			if(htblwhe != null){
				Enumeration enumwhe = htblwhe.keys();

				while(enumwhe.hasMoreElements()){
					key = enumwhe.nextElement().toString();
					if (whe.equals("")) {
						whe = whe + " WHERE " + key + " = '" + htblwhe.get(key).toString() + "'";
					} else {
						whe = whe + "   AND " + key + " = '" + htblwhe.get(key).toString() + "'";
					}
				}
			}

			// 懠偺抂枛偱儘僢僋傪偟偰偄側偄偐偳偆偐傪妋偐傔傑偡丅
		    lock(con,tablename,whe);

			String set = "";
			int i = 0;
			Enumeration enumup = htblup.keys();

			while(enumup.hasMoreElements()){
				key = enumup.nextElement().toString();
				i++;
				set = set + key + " = ?,";                              // Set Field name
			}

			// 僴僢僔儏僥乕僽儖偵偼擖傟側偐偭偨僼傿乕儖僪偩偗偳丄Update偟偨偄崁栚偑偁傞応崌
			if (otherset != null && !otherset.equals("") && !otherset.equals("NOMODIFY")) {
				int isite = otherset.indexOf(";");
				// ;偑懚嵼偟偨偲偒
				if (isite >= 0) {
					set = set + otherset.substring(0,isite) + ",";
					otherset = otherset.substring(isite+1);
				} else {
					set = set + otherset + ",";
					otherset = "";
				}
			}

			// otherset偑null傑偨偼""偺帪丄廋惓僆儁儗乕僞丄廋惓擔晅傪峏怴
			if (otherset == null || otherset.equals("") || !otherset.equals("NOMODIFY")) {
				set = set +
						"MOPECODE = '" + LOGINID + "',"	+		// 廋惓僆儁儗乕僞
						"MDATE = SYSDATE "				;		// 廋惓擔晅
			} else {
				set = set.substring(0,set.length()-1);
			}

			// 偙偺儊僜僢僪偱幚峴偡傞SQL暥
			String sql =	"UPDATE " + tablename + " SET " + set + whe;

		    pstmt = sqlSet(con,sql);

			i = 0;
			enumup = htblup.keys();
			while(enumup.hasMoreElements()){
				key = enumup.nextElement().toString();
				i++;
				pstmt.setObject(i,htblup.get(key));			// Set Field value
			}

			size = exeUpdate(pstmt);

			return size;

		} catch (OracleException orae) {
			st = orae.getStatus();
			throw new OracleException(st);
		} catch (Exception e) {
			throw new OriginalException(e);
		} finally {
			// Statemet偼丆昁偢close()偟傑偡丅
			try {
				if (pstmt != null) pstmt.close();
			} catch (Exception ex) { }
		}
	}

	/**
	 *	斈梡SELECT儊僜僢僪-儁乕僕儞僌懳墳(嵟戝専嶕悢丄庢摼儗僐乕僪斖埻)僘乕儉梡
	 *	@param  con			 DB僪儔僀僶偺URL側偳
	 *	@param  sql			 SQL暥
	 *	@param  table_name   専嶕僥乕僽儖柤
	 *	@param  selFields[]  庢摼崁栚柤
	 *	@param  pagemax		 1儁乕僕曈傝偺嵟戝専嶕悢
	 *	@param  page		 儁乕僕斣崋
	 *  @return Object[][]   庢摼僨乕僞亄儁乕僕儞僌忣曬([嵟屻偺攝楍][0]:慜儁乕僕忣曬丒[嵟屻偺攝楍][1]:師儁乕僕忣曬)
	 */

	public Object[][] selectFieldPagesZoom(Connection con, String select, String from, String whe, String table_name,String[] selFields,int pagemax, int page ,String end_fg) {
		PreparedStatement stmt = null;
		ResultSet rs = null;
		try {
			int count  = 0;
			Object[][] objs = null;
			// param check
			int sellen = selFields.length;
			if (page <= 0) {
				throw new MissingFindException("");
			}

			int len = 0;

			if(end_fg.equals("s")){
				page = 1;
			} else if(end_fg.equals("e")){
				StringBuffer sql_count =  new StringBuffer(" SELECT COUNT(*) ").append(from).append(whe);
				stmt = sqlSet(con,sql_count.toString());
				rs = exeQuery(stmt);
				while (rs.next()) {
					len = rs.getInt(1);
				}
				rs.close();
				stmt.close();

				if(len%pagemax != 0){
					len = len - len%pagemax;
					page = len/pagemax+1;
				} else {
					page = len/pagemax;
				}
			}

			if (sellen != 0) {
			StringBuffer sql =  new StringBuffer(select).append(from).append(whe);
			stmt = sqlSet(con,sql.toString());
			rs = exeQuery(stmt);

			Vector v = new Vector();
			Object[] obj = null;

			boolean flag = false;
			while (rs.next()) {

				if(flag == false && page > 1){
				//億僀儞僞偺堏摦
					for(int i = 1; i < pagemax*(page-1); i++){
						rs.next();
					}
					flag = true;
					continue;
				}

				if(count == pagemax){
					count++;
					break;
				} else {
					obj = new Object[sellen];
					for (int i = 0; i < sellen; i++) {
						obj[i] = rs.getObject(selFields[i])==null?"":rs.getObject(selFields[i]);// get fields value
					}
					// Entity僆僽僕僃僋僩偼丆偄偔偮SELECT偱偒偰偄傞偐
					// 傢偐傜側偄偺偱丆偄偭偨傫 Vector 偵奿擺偟傑偡丅
					v.addElement(obj);
					count++;
				}
			}
			// Vector 偐傜 Entity僆僽僕僃僋僩偺攝楍傊堏偟懼偊傑偡丅
			if(sellen < 3){
				sellen = 3;
			}
			obj = new Object[sellen];
			// 師暸偑懚嵼偡傞偐敾抐
			if (count > pagemax) {		// 師暸偑懚嵼
				objs = new Object[count][sellen];
				obj[0]	= (Object)cf.intToStr(page - 1);
			    obj[1]	= (Object)cf.intToStr(page + 1);
			} else {                                // 師暸偑懚嵼偟側偄
				objs = new Object[count+1][sellen];
				obj[0]	= (Object)cf.intToStr(page - 1);
			    obj[1]	= (Object)"0";
			}
			v.addElement(obj);
			objs = (Object[][])v.toArray(objs);
			} else {
			objs = new Object[0][0];
			}
		    return objs;
		} catch (MissingFindException misse) {
			st = misse.getStatus();
			misse.printStackTrace();
			throw new MissingFindException(st.usermsg);
		} catch (OracleException orae) {
			orae.printStackTrace();
			st = orae.getStatus();
			throw new OracleException(st);
		} catch (SQLException sqle) {
			sqle.printStackTrace();
			throw new OracleException(sqle);
		} catch (Exception e) {
			e.printStackTrace();
			throw new OriginalException(e);
		} finally {
			try {
				if(rs!=null) rs.close();
				if(stmt != null ) stmt.close();
			} catch (Exception ex) { }
		}
	}

	/**
	 *	斈梡SELECT儊僜僢僪-僼僅乕儅僢僩曄姺丄儁乕僕儞僌懳墳(嵟戝専嶕悢丄庢摼儗僐乕僪斖埻)
	 *	@param  con			 DB僪儔僀僶偺URL側偳
	 *	@param  sql			 SQL暥
	 *	@param  table_name   専嶕僥乕僽儖柤
	 *	@param  selFields[]  庢摼崁栚柤
	 *	@param  pagemax		 1儁乕僕曈傝偺嵟戝専嶕悢
	 *	@param  page		 儁乕僕斣崋
	 *  @return Object[][]   庢摼僨乕僞亄儁乕僕儞僌忣曬([嵟屻偺攝楍][0]:慜儁乕僕忣曬丒[嵟屻偺攝楍][1]:師儁乕僕忣曬)
	 */

	public Object[][] selectFieldPages(Connection con, String sql, String table_name,String[] selFields,int pagemax, int page) {
		PreparedStatement stmt = null;
		ResultSet rs = null;
		try {
			int count  = 0;
			Object[][] objs = null;
			// param check
			int sellen = selFields.length;
			if (sellen != 0) {
				stmt = sqlSet(con,sql);
				rs = exeQuery(stmt);

				Vector v = new Vector();
				Object[] obj = null;

				boolean flag = false;
				while (rs.next()) {

					if(flag == false && page > 1){
					//億僀儞僞偺堏摦
						for(int i = 1; i < pagemax*(page-1); i++){
							rs.next();
						}
						flag = true;
						continue;
					}

					if(count == pagemax){
						break;
					} else {
						obj = new Object[sellen];
						for (int i = 0; i < sellen; i++) {
							obj[i] = rs.getObject(selFields[i])==null?"":rs.getObject(selFields[i]);        // get fields value
						}
						// Entity僆僽僕僃僋僩偼丆偄偔偮SELECT偱偒偰偄傞偐
						// 傢偐傜側偄偺偱丆偄偭偨傫 Vector 偵奿擺偟傑偡丅
						v.addElement(obj);
						count++;
					}
				}
				// Vector 偐傜 Entity僆僽僕僃僋僩偺攝楍傊堏偟懼偊傑偡丅
				if(sellen < 3){
					sellen = 3;
				}
				objs = new Object[count][sellen];
				objs = (Object[][])v.toArray(objs);
			} else {
				objs = new Object[0][0];
			}
		    return objs;
		} catch (MissingFindException misse) {
			st = misse.getStatus();
			misse.printStackTrace();
			throw new MissingFindException(st.usermsg);
		} catch (OracleException orae) {
			orae.printStackTrace();
			st = orae.getStatus();
			throw new OracleException(st);
		} catch (SQLException sqle) {
			sqle.printStackTrace();
			throw new OracleException(sqle);
		} catch (Exception e) {
			e.printStackTrace();
			throw new OriginalException(e);
		} finally {
			try {
				if(rs!=null) rs.close();
				if(stmt != null ) stmt.close();
			} catch (Exception ex) { }
		}
	}

	/**
	 *	斈梡SELECT儊僜僢僪-僼僅乕儅僢僩曄姺丄儁乕僕儞僌懳墳(嵟戝専嶕悢丄庢摼儗僐乕僪斖埻)
	 *	@param  con			 DB僪儔僀僶偺URL側偳
	 *	@param  sql			 SQL暥
	 *	@param  table_name   専嶕僥乕僽儖柤
	 *	@param  selFields[]  庢摼崁栚柤
	 *	@param  pagemax		 1儁乕僕曈傝偺嵟戝専嶕悢
	 *	@param  page		 儁乕僕斣崋
	 *  @return Object[][]   庢摼僨乕僞亄儁乕僕儞僌忣曬([嵟屻偺攝楍][0]:慜儁乕僕忣曬丒[嵟屻偺攝楍][1]:師儁乕僕忣曬)
	 */

	public Object[][] selectFieldPages(Connection con, String sql, String table_name,int sellen,int pagemax, int page) {
		PreparedStatement stmt = null;
		ResultSet rs = null;
		try {
			int count  = 0;

			// param check
			if (sellen == 0) {
				throw new SQLException();
			}

			stmt = sqlSet(con,sql);
			rs = exeQuery(stmt);

			Vector v = new Vector();
			Object[] obj = null;

			boolean flag = false;
			while (rs.next()) {
				if(flag == false && page > 1){
				//億僀儞僞偺堏摦
					for(int i = 1; i < pagemax*(page-1); i++){
						rs.next();
					}
					flag = true;
					continue;
				}

				if(count == pagemax){
					break;
				} else {
					obj = new Object[sellen];
					for (int i = 0; i < sellen; i++) {
						obj[i] = rs.getObject(i+1)==null?"":rs.getObject(i+1);        // get fields value
					}
					// Entity僆僽僕僃僋僩偼丆偄偔偮SELECT偱偒偰偄傞偐
					// 傢偐傜側偄偺偱丆偄偭偨傫 Vector 偵奿擺偟傑偡丅
					v.addElement(obj);
					count++;
				}
			}
			// Vector 偐傜 Entity僆僽僕僃僋僩偺攝楍傊堏偟懼偊傑偡丅
			if(sellen < 3){
				sellen = 3;
			}
			Object[][] objs = null;
			objs = new Object[count][sellen];
			objs = (Object[][])v.toArray(objs);
		    return objs;

		} catch (MissingFindException misse) {
			st = misse.getStatus();
			misse.printStackTrace();
			throw new MissingFindException(st.usermsg);
		} catch (OracleException orae) {
			orae.printStackTrace();
			st = orae.getStatus();
			throw new OracleException(st);
		} catch (SQLException sqle) {
			sqle.printStackTrace();
			throw new OracleException(sqle);
		} catch (Exception e) {
			e.printStackTrace();
			throw new OriginalException(e);
		} finally {
			try {
				if(rs!=null) rs.close();
				if(stmt != null ) stmt.close();
			} catch (Exception ex) { }
		}
	}
}


⌨️ 快捷键说明

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