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

📄 dataconfig.java

📁 一个货物管理系
💻 JAVA
字号:
/**
 * title:????????????????????
 * desciprion:????????????????????
 * @author:victor
 * @version:v1.0
 * 2005-10-12
 */
package good;


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;

/**
 * DataConfig
 * 
 * @author:victor
 * @version:v1.0
 * 
 */
public abstract class DataConfig {

	/**
	 * ??????????
	 */

	private Connection myConn = null;

	private Statement stmt = null;

	private DataSource ds = null;

	private ResultSet rs = null;

	private Context ctx = null;

	private ArrayList sqlBatch = new ArrayList();

	public DataConfig() {

	}

	/**
	 * ??????????????,??????????????
	 */
	public void setJNDI(String jndiName) {
		try {
			ctx = new InitialContext();
			ds = (DataSource) ctx.lookup(jndiName);
		} catch (Exception ex) {
			System.err.println("SetJNDI is Error:" + ex.getMessage());
		}
	}

	/**
	 * ????????????SQL????????????????
	 */
	public ResultSet executeQuery(String sql) {
		rs = null;
		try {
            System.out.println(sql);
			myConn = ds.getConnection();
           
			stmt = myConn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
					ResultSet.CONCUR_UPDATABLE);
            System.out.println(sql);
			rs = stmt.executeQuery(sql);
		} catch (SQLException ex) {
			System.err.println("ExecuteQuery is Error:" + ex.getMessage());
		}
		return rs;
	}

	/**
	 * ????SQL????????????????????????
	 */
	public void executeUpdate(String sql) {
		stmt = null;
		rs = null;
		try {
			myConn = ds.getConnection();
			stmt = myConn.createStatement();
			stmt.executeUpdate(sql);
		} catch (SQLException ex) {
			System.err.println("ExecuteUpdate is Error:" + ex.getMessage());
		}
	}

	/**
	 * ??????????????????????????????????????????
	 */

	public void beginTransaction() {
		stmt = null;
		rs = null;
		try {
			myConn = ds.getConnection();
			myConn.setAutoCommit(false);
			stmt = myConn.createStatement();
		} catch (SQLException ex) {
			System.out.println("BeginTransaction is Error:" + ex.getMessage());
		}
	}

	/**
	 * ??????????????????????????
	 */

	public void addBatch(String sql) {
		sqlBatch.add(sql);
	}

	/**
	 * ??????????
	 */

	public void commitBatch() {
		try {
			for (int i = 0; i < sqlBatch.size(); i++) {
				stmt.executeUpdate(sqlBatch.get(i).toString());
			}
			myConn.commit();
		} catch (SQLException ex) {
			System.out.println("Commit is Error:" + ex.getMessage());
			try {
				myConn.rollback();
			} catch (SQLException e) {
				System.out.println("Rollback is Error:" + e.getMessage());
			}
		}
	}

	/**
	 * ??????????????????????????????????????????
	 */

	public void endTransaction() {
		try {
			myConn.setAutoCommit(true);
		} catch (Exception ex) {
			System.out.println("endTransaction is error:" + ex.getMessage());
		}
	}

	/**
	 * ??????????????????
	 * 
	 * @return
	 */
	public Connection getConnection() {
		myConn = null;
		try {
			myConn = ds.getConnection();
		} catch (SQLException e) {
			System.out.println("????????????????????????");
			e.printStackTrace();
		}
		return myConn;
	}

	/**
	 * ????????????FOR ORACLE??
	 * 
	 * @param className
	 * @param url
	 * @param uid
	 * @param password
	 */
	public void derectConnectForOracle(String className, String url, String uid,
			String password) {
		try {
			Class.forName(className);
			myConn = DriverManager.getConnection(url, uid, password);
		} catch (ClassNotFoundException e) {
			System.out.println("CLASS FOR NAME ERROR!FOR ORACLE ????????");
			e.printStackTrace();
		} catch (SQLException e) {
			System.out.println("GETCONNECTION ERROR!FOR ORACLE ????????");
			e.printStackTrace();
		}
	}
	
	/**
	 * ????????????FOR MYSQL??
	 * 
	 * @param className
	 * @param url
	 * @param uid
	 * @param password
	 */
	public void derectConnectForMySql(String className, String url) {
		try {
			Class.forName(className);
			myConn = DriverManager.getConnection(url);
		} catch (ClassNotFoundException e) {
			System.out.println("CLASS FOR NAME ERROR!FOR MYSQL ????????");
			e.printStackTrace();
		} catch (SQLException e) {
			System.out.println("GETCONNECTION ERROR!FOR MYSQL ????????");
			e.printStackTrace();
		}
	}

	/**
	 * ??????????,????????????SQL????????????????
	 */
	public ResultSet executeDerectQuery(String sql) {
		rs = null;
		try {
			stmt = myConn.createStatement();
			rs = stmt.executeQuery(sql);
		} catch (SQLException ex) {
			System.err.println("ExecuteQuery is Error:" + ex.getMessage());
		}
		return rs;
	}

	/**
	 * ??????????,????SQL????????????????????????
	 */
	public void executeDerectUpdate(String sql) {
		stmt = null;
		rs = null;
		try {
			stmt = myConn.createStatement();
			stmt.executeUpdate(sql);
		} catch (SQLException ex) {
			System.err.println("ExecuteUpdate is Error:" + ex.getMessage());
		}
	}

	/**
	 * ??????????????????????????????????????????
	 */

	public void beginDerectTransaction() {
		stmt = null;
		rs = null;
		try {
			myConn.setAutoCommit(false);
			stmt = myConn.createStatement();
		} catch (SQLException ex) {
			System.out.println("BeginTransaction is Error:" + ex.getMessage());
		}
	}

	/**
	 * ??????????????
	 */
	public void closeConn() {
		try {
			closeStmt();
			closeMyConn();
		} catch (SQLException e) {
			System.out.println("??????????????????????????");
			e.printStackTrace();
		}
	}

	/**
	 * ??????????
	 */
	public void closeStmt() throws SQLException {
		try {
			if (stmt != null) {
				stmt.close();
			}
		} catch (SQLException e) {
			System.out.println("????????????????");
			e.printStackTrace();
		}
	}

	/**
	 * ??????????????
	 */
	public void closeMyConn() throws SQLException {
		try {
			if (myConn != null) {
				myConn.close();
			}
		} catch (SQLException e) {
			System.out.println("????????????????????");
			e.printStackTrace();
		}
	}
}

⌨️ 快捷键说明

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