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

📄 database.java

📁 解析特定16进制文件
💻 JAVA
字号:
/**
 * Created by IntelliJ IDEA.
 * User: zhouqi
 * Date: 2004-9-15
 * Time: 13:25:21
 * To change this template use Options | File Templates.
 */

package com.datangmobile.oss.omc.pc.util;

import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;

import javax.sql.DataSource;


import com.datangmobile.oss.platform.util.ILogger;
import com.datangmobile.oss.platform.util.ModuleLogger;
import com.mchange.v2.c3p0.DataSources;

/**
 * 这个类主要封装了基本的database的一些方法,由于database操作的收尾释放工作很繁琐,所以索性放在这里一起处理
 * 
 * @author liuyuan
 * @version 1.0
 * 
 * 异常处理
 * @author liuyuan
 * @version 1.1
 */
public class Database {

	/**
	 * 日志
	 */
	private static final ILogger log = ModuleLogger.getPmLogger()
			.getOperLogger();

	private static DataSource pooled;

	private static String CONFIG_FILE_NAME = "config/database.ini";

	/**
	 * 关闭连接
	 * 
	 * @param conn
	 */
	static public void closeConnection(Connection conn) {
		if (null != conn)

		{
			try {
				conn.close();
			} catch (SQLException ex) {
				log.error(ex.getMessage(), ex);
			}
			conn = null;
		}
	}

	/**
	 * 连接数据库
	 * 
	 * @return
	 * @throws SQLException
	 * @throws IOException
	 */
	static public Connection connect() throws SQLException, IOException {
		Connection conn = null;

		// 如果数据库连接为空,则获取
		if (null == pooled) {
			try {
				Properties p = new Properties();
				p.load(Database.class.getClassLoader().getResourceAsStream(
						CONFIG_FILE_NAME));
				String user = p.getProperty("user", "v3cm");
				String passwd = p.getProperty("passwd", "v3cm");
				String className = p.getProperty("className",
						"oracle.jdbc.driver.OracleDriver");
				String url = p.getProperty("url",
						"jdbc:mysql://localhost/v3test");

				// 测试代码
				// String user = "root";
				// String passwd = "root";
				// String className = "com.mysql.jdbc.Driver";
				// String url = "jdbc:mysql://localhost/v3test";

				// String user = "omcr";
				// String passwd = "dt";
				// String className = "oracle.jdbc.driver.OracleDriver";
				// String url="jdbc:oracle:thin:@172.30.2.19:1521:v3test";
				// 测试结束

				/* 载入驱动 */
				try {
					Class.forName(className);
				} catch (ClassNotFoundException e) {
					log.error(e.getMessage(), e);
				}

				// conn = DriverManager.getConnection(url, user, passwd);
				DataSource unpooled = DataSources.unpooledDataSource(url, user,
						passwd);
				pooled = DataSources.pooledDataSource(unpooled);
				// PooledDataSource ds = (PooledDataSource)pooled;
				conn = pooled.getConnection();

				return conn;
			} catch (IOException ex) {
				log.error(new StringBuilder().append("读取数据库配置文件异常!").append(
						ex.getMessage()).toString(), ex);
				throw ex;
			} catch (SQLException e) {
				log.error(new StringBuilder().append("连接数据库发生异常!").append(
						e.getMessage()).toString(), e);
				throw e;
			}
		} else {
			conn = pooled.getConnection();
			return conn;
		}
	}

	/**
	 * 关闭预编译的sql语句
	 * 
	 * @param pstmt
	 */
	static public void closepstmt(PreparedStatement pstmt) {
		if (null != pstmt) {
			try {
				pstmt.close();
			} catch (SQLException ex) {
				log.error(ex.getMessage(), ex);
			}
			pstmt = null;
		}
	}

	/**
	 * 关闭返回记录
	 * 
	 * @param rSet
	 */
	static public void closeRset(ResultSet rSet) {
		if (null != rSet) {
			try {
				rSet.close();
			} catch (SQLException ex) {
				log.error(ex.getMessage(), ex);
			}
			rSet = null;
		}
	}

	/**
	 * 关闭sql语句
	 * 
	 * @param stmt
	 */
	static public void closestmt(Statement stmt) {
		if (null != stmt) {
			try {
				stmt.close();
			} catch (SQLException ex) {
				log.error(ex.getMessage(), ex);
			}
			stmt = null;
		}
	}

	// public static void main(String[] args){
	// try {
	// connect();
	// } catch (SQLException e) {
	// e.printStackTrace();
	// } catch (IOException e) {
	// e.printStackTrace();
	// }
	// }

}

⌨️ 快捷键说明

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