db_get_connection.java

来自「一套网上书店系统采用JAVABEAN+SERVLET+JSP」· Java 代码 · 共 98 行

JAVA
98
字号
package ghy_db;

import java.io.*;
import java.sql.*;
import java.util.Properties;
import javax.naming.*;
import javax.sql.*;

class DB_get_connection {

	private String properties_filename = "jdbc_connection_options.properties";

	Connection get_conn_from_jndi() {
		System.out.println("使用jndi方式连接数据库");
		System.out.println();
		Connection conn = null;

		try {

			Properties p = new Properties();

			p.load(this.getClass().getResourceAsStream(
					"/" + properties_filename));

			System.out.print("jndi的名字是:" + p.getProperty("jndi_name"));

			Context envContext = (Context) new InitialContext()
					.lookup("java:/comp/env");

			DataSource ds = (DataSource) envContext.lookup(p
					.getProperty("jndi_name"));

			conn = ds.getConnection();

			System.out.println("    JNDI数据源ds对象是:" + ds);

		} catch (NamingException e) {

			e.printStackTrace();
		} catch (FileNotFoundException e) {

			e.printStackTrace();
		} catch (IOException e) {

			e.printStackTrace();
		} catch (SQLException e) {

			e.printStackTrace();
		}

		return conn;
	}

	Connection get_conn_from_jdbc() {
		System.out.println("使用jdbc方式连接数据库");
		System.out.println();

		Connection conn = null;

		try {

			Properties p = new Properties();

			p.load(this.getClass().getResourceAsStream(
					"/" + properties_filename));

			Class.forName(p.getProperty("driver_name"));

			conn = DriverManager.getConnection(p.getProperty("url"), p
					.getProperty("username"), p.getProperty("password"));

			System.out.println("driver_name=" + p.getProperty("driver_name"));
			System.out.println("url=" + p.getProperty("url"));
			System.out.println("username=" + p.getProperty("username"));
			System.out.println("password=" + p.getProperty("password"));

			System.out.println("直连数据库conn对象是:" + conn);
			System.out.println();

		} catch (FileNotFoundException e) {

			e.printStackTrace();
		} catch (IOException e) {

			e.printStackTrace();
		} catch (ClassNotFoundException e) {

			e.printStackTrace();
		} catch (SQLException e) {

			e.printStackTrace();
		}

		return conn;
	}

}

⌨️ 快捷键说明

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