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

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

?? database.java

?? 純粹jsp編寫的新聞發布系統
?? JAVA
?? 第 1 頁 / 共 4 頁
字號:
/**********************************************************
 Copyright (C),2003-10-12, Beijing  USTB.
 All rights reserved.
 Filename: Datebase.java
 Author: 劉中兵
 Version 1.0
 Date:2003-10-12
 Description:此文件為數據庫的基本操作處理類
 Other:
 Variable List:
 1.Connection conn = null;//數據庫連接對象
 Function List:
 //基本操作
 1.public DataBase()//構造函數
 2.public void getConnPool()//取得連接池
 3.public void createConn(String url,String usr,String pwd)//生成Oracle SQLServer等的連接
 4.public void createConn(String url)//生成Access連接
 5.public void releaseConn()//釋放數據庫連接
 6.public ResultSet QuerySQL(String sql)//查詢記錄
 7.public int ExecuteSQL(String sql)//執行增刪改的語句
 //輔助使用函數
 8.public int makeID(String table,String field1,String field2,String value1,boolean type1)//產生唯一編號,type1為false時表示條件字段為字符串類型
  public int makeID(String table,String field1,String field2,String field3,String value1,String value2,boolean type1,boolean type2)
  public int makeID_Add1(String table,String field1,String field2,String value1,boolean type1)//產生唯一編號,type1為false時表示條件字段為字符串類型
  public int makeID_Add1(String table,String field1,String field2,String field3,String value1,String value2,boolean type1,boolean type2)
 9.public int toID(String table,String field1,String field2,String value1)//將名稱轉換為編號
 10.public String toName(String table,String field1,String field2,String value)//將編號轉換為名稱
 11.public Vector (String sql,int page,int records)//分頁時取得一頁的數據量
 12.public int setSort(String table,String field1,String field2,String wherestr,String orderstr,boolean b)//為某一個字段進行重新排序
 //查詢與更新LOB類型
 13.public String QueryCLOB(String table,String wherestr,String clobfield)//查詢CLOB類型值
 14.public int UpdateCLOB(String table,String wherestr,String blobfield,String blobvalue)//修改CLOB類型值
 15.public String QueryBLOB(String table,String wherestr,String blobfield)//查詢BLOB類型值
 16.public int UpdateBLOB(String table,String wherestr,String blobfield,String blobvalue)//修改BLOB類型值
 17.public String QueryBLOB_JNDI(String table,String wherestr,String blobfield)//查詢BLOB類型值
 178.public int UpdateBLOB_JNDI(String table,String wherestr,String blobfield,String blobvalue)//修改BLOB類型值
 //LOB類型基本操作(到文件)
 19.public int clobInsert(String sql,String table,String wherestr,String clobfield,String infile)//往數據庫中插入一個新的CLOB對象
 20.public int clobModify(String table,String wherestr,String clobfield,String infile)//修改CLOB對象(是在原CLOB對象基礎上進行覆蓋式的修改)
 21.public int clobReplace(String table,String wherestr,String clobfield,String infile)//替換CLOB對象(將原CLOB對象清除,換成一個全新的CLOB對象)
 22.public int blobInsert(String sql,String table,String wherestr,String blobfield,String infile)//往數據庫中插入一個新的BLOB對象
 23.public int blobModify(String table,String wherestr,String blobfield,String infile)//修改BLOB對象(是在原BLOB對象基礎上進行覆蓋式的修改)
 24.public int blobReplace(String table,String wherestr,String blobfield,String infile)//替換BLOB對象(將原BLOB對象清除,換成一個全新的BLOB對象)
 //數據庫結構信息
 25.public Hashtable getDataBaseInfo()//數據庫信息
 26;public Vector getTableList()//數據表列表
 27.public Vector getTableStruct(String table)//數據表的結構
 28.public Vector getResultSetData(ResultSet rs)//取得數據集內容
 //對sql語句的分布處理
 29.public void prepareStatement(String sql)//創建申明對象
 30.public void executeQuery()//執行查詢
 31.public boolean next()//轉向下一條
 32.public String getObject(String field,String sqlType)//取得數據并根據數據類型轉化為字符串
 33.public void setObject(int index,String value,String sqlType)//根據數據類型保存到數據庫
 34.public void executeUpdate()//執行更新
 35.public void closePstm()//關閉申明對象
 36.public void closeRs()//關閉游標
 History:
 date:2003-11-21
 name:liumei
 action:修改getOnePage(String sql,int page,int records)//分頁時取得一頁的數據量
 每頁的記錄顯示條數從字典中取,即去掉records的作用
 ***********************************************************/
package com.ideas.bean;

import java.util.*;
import java.text.*;
import java.sql.*;
import java.io.*;
import java.lang.*;
import javax.naming.*;
import oracle.jdbc.driver.OracleResultSet;
import oracle.sql.*;
import com.ideas.util.*;

/**
 * 此文件為數據庫的基本操作處理類
 * @author 劉中兵
 * @version 1.0-hg
 */
public class DataBase extends Object
{
	Connection conn = null;
	PreparedStatement pstm = null;
	ResultSet rs = null;
	DBConnectionManager connMgr = null;

	/**構造函數*/
	public DataBase()
	{
	}

	/**取得連接池*/
	public void getConnPool()
	{
		try
		{
			Context initCtx = new InitialContext();
			Context ctx = (Context)initCtx.lookup("java:comp/env");

			/**獲取連接池對象*/
			Object obj = (Object)ctx.lookup("jdbc/OracleDB");

			/**類型轉換*/
			javax.sql.DataSource ds = (javax.sql.DataSource)obj;
			conn = ds.getConnection();

			/**測試連接計數*/
			//	ParentBean.curnum++;
			//	ParentBean.sumnum++;
			ParentBean.showConnNUM(true);
		}
		catch(NamingException e)
		{
			System.out.println("從數據池取得數據庫連接時出錯;\r\n錯誤為:" + e);
		}
		catch(SQLException e)
		{
			System.out.println("從數據池取得數據庫連接時出錯;\r\n錯誤為:" + e);
		}
	}

	/**創建我的連接池*/
	public boolean getMyConnPool()
	{
		//Configuration.DB_URL = "jdbc:mysql://192.168.0.1:3306/yj";
		//Configuration.DB_JDBCDRIVER = "org.gjt.mm.mysql.Driver";
		connMgr = DBConnectionManager.getInstance();
		conn = connMgr.getConnection(Configuration.ConnectionPoolName);
		if(conn == null)
		{
			return false;
		}
		else
		{
			return true;
		}
	}

	/**釋放我的連接池*/
	public boolean releaseMyConnPool()
	{
		connMgr.freeConnection(Configuration.ConnectionPoolName, conn);
		return true;
	}



	 /**生成Oracle SQLServer等的連接*/
	 public void createConn(String drv, String url, String usr, String pwd)
	 {
		 try
		 {
			 Class.forName(drv).newInstance();
			 conn = DriverManager.getConnection(url, usr, pwd);

			 /**測試連接計數*/
			 ParentBean.showConnNUM(true);
		 }
		 catch(ClassNotFoundException ec)
		 {
			 System.out.println("從自身建立數據庫連接時出錯;\r\n錯誤為:" + ec);
		 }
		 catch(SQLException e)
		 {
			 System.out.println("從自身建立數據庫連接時出錯;\r\n錯誤為:" + e);
		 }
		 catch(Exception et)
		 {
			 System.out.println("從自身建立數據庫連接時出錯;\r\n錯誤為:" + et);
		 }
	 }

	/**生成Access連接*/
	public void createConn(String drv, String url)
	{
		try
		{
			Class.forName(drv).newInstance();
			conn = DriverManager.getConnection(url);

			/**測試連接計數*/
			ParentBean.showConnNUM(true);
		}
		catch(ClassNotFoundException ec)
		{
			System.out.println("從自身建立數據庫連接時出錯;\r\n錯誤為:" + ec);
		}
		catch(SQLException e)
		{
			System.out.println("從自身建立數據庫連接時出錯;\r\n錯誤為:" + e);
		}
		catch(Exception et)
		{
			System.out.println("從自身建立數據庫連接時出錯;\r\n錯誤為:" + et);
		}
	}

	/**釋放數據庫連接*/
	public void releaseConn()
	{
		try
		{
			if(conn != null)
			{
				conn.close();

				/**測試連接計數*/
				ParentBean.showConnNUM(false);
			}
		}
		catch(SQLException e)
		{
			System.out.println("關閉數據庫連接時出錯;\r\n錯誤為:" + e);
		}
	}

	/**查詢記錄*/
	public ResultSet QuerySQL(String sql)
	{
		ResultSet rs = null;
		try
		{
			pstm = conn.prepareStatement(sql);
			rs = pstm.executeQuery();
		}
		catch(SQLException sqle)
		{
			System.out.println("調用SQL語句 " + sql + " 時出錯;\r\n錯誤為:" + sqle);
		}
		return rs;
	}

	/**執行增刪改的語句*/
	public int ExecuteSQL(String sql)
	{
		try
		{
            boolean defaultCommit = conn.getAutoCommit();
			conn.setAutoCommit(false);
			pstm = conn.prepareStatement(sql);
			pstm.executeUpdate();
			conn.commit();
            conn.setAutoCommit(defaultCommit);
			pstm.close();
		}
		catch(SQLException sqle)
		{
			System.out.println("調用SQL語句 " + sql + " 時出錯;\r\n錯誤為:" + sqle);
			return sqle.getErrorCode();
		}
		return 0;
	}

	/**產生唯一編號*/
	public int makeID(String table, String field1, String field2, String value1,
					  boolean type1)
	{
		int out = -1;
		String sql = "";
		try
		{
			//只有唯一主鍵field1
			sql = "select " + field1 + " as ID from " + table + " order by " +
				field1;
			//有兩個主鍵field1、field2
			if(!value1.equals(""))
			{ //當第一個字段不空時,作為條件查詢第二個字段
				sql = "select " + field2 + " as ID from " + table + " where " +
					field1 +
					"=" + value1 + " order by " + field2;
				if(!type1)
				{ //是字符串時 將type1設為false
					sql = "select " + field2 + " as ID from " + table +
						" where " +
						field1 + "='" + value1 + "' order by " + field2;
				}
			}
			pstm = conn.prepareStatement(sql);
			rs = pstm.executeQuery();
			int t1 = 1;
			int t2 = 2;
			if(rs.next())
			{ //有記錄
				t1 = rs.getInt("ID");
				out = t1;
				boolean bool = false;
				while(rs.next())
				{ //不止一條紀錄
					bool = true;
					t2 = rs.getInt("ID");
					if((t2 - t1) > 1)
					{
						break; //如果t2與t1相差大于1,則跳出去,新編號為t1++(見后面**)
					}
					t1 = t2; //否則將t2賦給t1
				}
				if(!bool)
				{ //如果只有一條紀錄
					if(t1 > 1)
					{
						t1 = 1; //如果已有紀錄的ID號大于1,則新編號設為1
					}
					else
					{
						t1++;
					}
				}
				else
				{
					t1++; //**
				}
			}
			if(out > 1)
			{
				out = 1;
			}
			else
			{
				out = t1;

			}
			rs.close();
			pstm.close();
		}
		catch(SQLException sqle)
		{
			System.out.println("調用SQL語句 " + sql + " 時出錯;\r\n錯誤為:" + sqle);
		}
		return out;
	}

	/**產生唯一編號*/
	public int makeID_Add1(String table, String field1, String field2,
						   String value1, boolean type1)
	{
		int out = -1;
		String sql = "";
		try
		{
			//只有唯一主鍵field1
			sql = "select max(" + field1 + ")+1 as ID from " + table +
				" order by " +
				field1;
			//有兩個主鍵field1、field2
			if(!value1.equals(""))
			{ //當第一個字段不空時,作為條件查詢第二個字段
				sql = "select (" + field2 + ")+1 as ID from " + table +
					" where " +
					field1 + "=" + value1 + " order by " + field2;
				if(!type1)
				{ //是字符串時 將type1設為false
					sql = "select (" + field2 + ")+1 as ID from " + table +
						" where " +
						field1 + "='" + value1 + "' order by " + field2;
				}
			}
			pstm = conn.prepareStatement(sql);
			rs = pstm.executeQuery();
			if(rs.next())
			{ //有記錄
				out = rs.getInt(1);
			}

			rs.close();
			pstm.close();
		}
		catch(SQLException sqle)
		{
			System.out.println("調用SQL語句 " + sql + " 時出錯;\r\n錯誤為:" + sqle);
		}
		return out;
	}

	public int makeID(String table, String field1, String field2, String field3,
					  String value1, String value2, boolean type1,
					  boolean type2)
	{
		int out = -1;
		String sql = "";
		try
		{
			//只有唯一主鍵field1
			sql = "select " + field1 + " as ID from " + table + " order by " +
				field1;
			//有兩個主鍵field1、field2
			if(!value1.equals(""))
			{ //當第一個字段不空時,作為條件查詢第二個字段
				sql = "select " + field2 + " as ID from " + table + " where " +
					field1 +
					"=" + value1 + " order by " + field2;
				if(!type1)
				{ //是字符串時 將type1設為false
					sql = "select " + field2 + " as ID from " + table +
						" where " +
						field1 + "='" + value1 + "' order by " + field2;
				}
			}
			if(!value2.equals(""))
			{ //當第二個字段不空時,作為條件查詢第三個字段
				sql = "select " + field3 + " as ID from " + table + " where " +
					field1 +
					"=" + value1 + " and " + field2 + "=" + value2 +
					" order by " +
					field3;
				if(!type2)
				{ //是字符串時 將type1設為false
					sql = "select " + field3 + " as ID from " + table +
						" where " +
						field1 + "='" + value1 + "' and " + field2 + "='" +
						value2 +
						"' order by " + field3;
				}
			}
			pstm = conn.prepareStatement(sql);
			rs = pstm.executeQuery();
			int t1 = 1;
			int t2 = 2;
			if(rs.next())
			{ //有記錄
				t1 = rs.getInt("ID");
				out = t1;
				boolean bool = false;
				while(rs.next())
				{ //不止一條紀錄
					bool = true;
					t2 = rs.getInt("ID");
					if((t2 - t1) > 1)
					{
						break; //如果t2與t1相差大于1,則跳出去,新編號為t1++(見后面**)
					}
					t1 = t2; //否則將t2賦給t1
				}
				if(!bool)
				{ //如果只有一條紀錄
					if(t1 > 1)
					{
						t1 = 1; //如果已有紀錄的ID號大于1,則新編號設為1
					}
					else
					{
						t1++;
					}
				}
				else
				{
					t1++; //**
				}
			}
			if(out > 1)
			{
				out = 1;
			}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产午夜亚洲精品羞羞网站| 日韩av中文在线观看| 亚洲精品成人少妇| 国内精品国产成人国产三级粉色| 99国产欧美久久久精品| 精品国产91九色蝌蚪| 亚洲国产一区二区三区青草影视| 国产精品18久久久久久vr| 欧美乱妇一区二区三区不卡视频| 国产精品另类一区| 麻豆成人免费电影| 欧美日韩色综合| 亚洲欧美中日韩| 国产成人免费网站| 欧美一区二区三区婷婷月色| 亚洲综合精品久久| 99久久精品国产麻豆演员表| 国产欧美日韩一区二区三区在线观看| 舔着乳尖日韩一区| 欧美群妇大交群中文字幕| 一区二区三区在线观看国产 | 丁香六月久久综合狠狠色| 7777精品伊人久久久大香线蕉最新版| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 国产毛片一区二区| 久久精品无码一区二区三区| 久久精品国产77777蜜臀| 91精品久久久久久久99蜜桃 | 欧美唯美清纯偷拍| 久久av资源站| 欧美电影在哪看比较好| 亚洲成人免费视| 在线看日本不卡| 亚洲国产视频一区| 欧美视频中文字幕| 亚洲123区在线观看| 欧美人与禽zozo性伦| 日本亚洲天堂网| 精品国产网站在线观看| 久久精品999| 国产午夜三级一区二区三| 国产成人精品免费看| 国产精品污www在线观看| av激情综合网| 一区二区高清在线| 在线播放国产精品二区一二区四区| 亚洲va欧美va国产va天堂影院| 欧美日本在线播放| 精品一区二区国语对白| 久久九九久久九九| 色综合婷婷久久| 五月婷婷色综合| 久久久亚洲国产美女国产盗摄 | 日韩欧美国产精品| 国产乱人伦偷精品视频免下载| 国产女人水真多18毛片18精品视频| 成人免费毛片嘿嘿连载视频| 亚洲老妇xxxxxx| 日韩一区二区电影网| 国产成人午夜电影网| 亚洲最新视频在线观看| 日韩视频国产视频| www.亚洲国产| 日韩高清在线不卡| 日本一区二区三区视频视频| 在线看国产一区二区| 久久av中文字幕片| 尤物在线观看一区| 欧美精品一区男女天堂| 色婷婷国产精品| 精品一区二区免费| 夜夜嗨av一区二区三区中文字幕| 精品入口麻豆88视频| 在线观看免费成人| 国产河南妇女毛片精品久久久| 亚洲一区二区三区影院| 精品1区2区在线观看| 日本高清成人免费播放| 国精产品一区一区三区mba桃花 | 久久色成人在线| 在线看国产一区| 成人免费精品视频| 蜜桃视频第一区免费观看| 亚洲卡通欧美制服中文| 久久天堂av综合合色蜜桃网| 精品视频在线看| 97se亚洲国产综合在线| 久久91精品国产91久久小草| 亚洲18女电影在线观看| **性色生活片久久毛片| 26uuu亚洲综合色欧美 | 午夜精品久久久| 成人欧美一区二区三区| 久久久久久久精| 日韩欧美一区在线| 欧美日韩激情在线| 色一情一乱一乱一91av| 成人精品一区二区三区中文字幕| 精品一区二区三区影院在线午夜| 日韩一区精品字幕| 一卡二卡三卡日韩欧美| 1区2区3区国产精品| 国产精品私房写真福利视频| 精品国产成人系列| 精品欧美一区二区久久| 欧美精品v日韩精品v韩国精品v| 在线视频你懂得一区| 99精品一区二区| 91亚洲资源网| 一道本成人在线| 一本高清dvd不卡在线观看| 97精品久久久久中文字幕| 成人在线一区二区三区| 成人丝袜高跟foot| 成人晚上爱看视频| a亚洲天堂av| 91女神在线视频| 色94色欧美sute亚洲线路一久 | 欧美日韩色一区| 欧美日韩国产a| 51精品久久久久久久蜜臀| 欧美日韩一区二区三区四区五区| 91成人在线精品| 欧美人牲a欧美精品| 欧美一区二区大片| 久久婷婷色综合| 国产精品色一区二区三区| 国产精品乱码一区二区三区软件| 最好看的中文字幕久久| 一区二区三区高清不卡| 日韩精品久久久久久| 麻豆国产精品官网| 国产精品一区二区91| 91网站最新地址| 欧美日韩午夜影院| 欧美tickling网站挠脚心| 国产欧美精品一区aⅴ影院| 亚洲少妇屁股交4| 午夜精品123| 国产精品原创巨作av| 色综合久久久久综合体| 51精品久久久久久久蜜臀| 久久一夜天堂av一区二区三区| 亚洲国产精品黑人久久久| 一区二区免费在线播放| 久久99九九99精品| av不卡在线播放| 在线播放欧美女士性生活| 国产日韩亚洲欧美综合| 一区二区三区四区激情| 精品亚洲免费视频| av成人免费在线观看| 日韩欧美国产麻豆| 亚洲私人黄色宅男| 色老汉av一区二区三区| 欧美一区二区三区免费观看视频| 国产精品无圣光一区二区| 亚洲成人免费视| 成人国产精品免费网站| 欧美女孩性生活视频| 中文天堂在线一区| 青草国产精品久久久久久| 99re这里只有精品6| 欧美成人video| 亚洲成人av电影| 99九九99九九九视频精品| 精品免费国产二区三区| 亚洲综合视频在线观看| 成人一区二区三区| 日韩欧美美女一区二区三区| 一区二区三区在线视频播放| 国产精品一卡二卡| 日韩欧美中文一区二区| 亚洲夂夂婷婷色拍ww47| 成人app下载| 久久精品一区八戒影视| 日韩国产欧美视频| 欧美丝袜丝交足nylons图片| 中文字幕中文字幕中文字幕亚洲无线| 麻豆国产欧美日韩综合精品二区 | 国产麻豆成人精品| 欧美一区二区视频在线观看| 亚洲欧洲精品天堂一级| 国产成人日日夜夜| 久久视频一区二区| 国产呦精品一区二区三区网站| 欧美一区二区三区色| 亚洲成av人片一区二区三区| 色综合视频一区二区三区高清| 中文一区在线播放| 福利一区在线观看| 久久女同精品一区二区| 麻豆91在线观看| 欧美一区二区三区爱爱| 舔着乳尖日韩一区| 91精品国产综合久久香蕉的特点 | 欧美色视频一区| 亚洲最大的成人av| 在线精品视频小说1| 一二三四社区欧美黄|