dbconnector.java

来自「用手机浏览的一个类似于聊天室 博克 homepage 等 对这方面有 兴趣的朋友」· Java 代码 · 共 153 行

JAVA
153
字号
package com.entaz.lib.db;

import java.sql.*;

import java.sql.Connection;
import java.sql.SQLException;

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

public class DBConnector 
{
	// DB Server IP
	//
    public final static String SYSTEM_DB_IP = "10.10.42.51";

	public static Connection getConnection(String szDB, String phone)
	{
		try
		{
			Class.forName("net.sourceforge.jtds.jdbc.Driver");
			Connection con = DriverManager.getConnection("jdbc:jtds:sqlserver://"+SYSTEM_DB_IP+"/"+szDB+";tds=8.0;lastupdatecount=true","sa","sa");

			if( chkBlackList( con , phone ) )
			{
				con = null;
				return null;
			}

			return con;
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}

		return null;
	}
		
	
	public static Connection getConnection(String szDB)
	{
		System.out.println(szDB);
		Context initContext;
		StringBuffer sb = new StringBuffer(100);
		sb.append("jdbc/");
		sb.append(szDB);
		
		try
		{

			initContext = new InitialContext();
			Context envContext = (Context) initContext.lookup("java:/comp/env");
			DataSource ds = (DataSource) envContext.lookup(sb.toString());
			Connection conn = ds.getConnection();

			return conn;
		}
		catch (Exception e)
		{
			//e.printStackTrace();
			return getDirectConnectionToDatabase();
		}
		//return null;
	}
	
	private static Connection getDirectConnectionToDatabase() {
		Connection conn = null;
		try {
			Class.forName("net.sourceforge.jtds.jdbc.Driver");
			String url = "jdbc:jtds:sqlserver://10.10.42.51:1433/mugeta1";
			conn = DriverManager.getConnection(url, "sa", "sa");
			//conn.setAutoCommit(false);
		} catch (ClassNotFoundException cnfe) {
			cnfe.printStackTrace();
		} catch (SQLException sqle) {
			sqle.printStackTrace();
		}
		return conn;
	}
	
	
//	public static void main(String args[])
//	{
//		//Connection con = getConnection("mugeta");
//		Connection con = getDirectConnectionToDatabase();
//	}

	public static boolean chkBlackList( Connection connection , String mphone ) throws SQLException
	{
		Connection		con		=		connection;
		Statement		stmt		=		null;
		ResultSet		rs			=		null;

		try
		{
			stmt = con.createStatement();
			
			rs = stmt.executeQuery("SELECT TOP 1 phonenum FROM GT_black_user WHERE phonenum = '"+mphone+"'");
			if(rs.next())
			{
				return true;
			}

			rs.close();
			return false;
		}
		catch(Exception e){
							        
		}finally{				 
				if(rs !=null) try{rs.close();}catch(Exception se){}
				if(stmt !=null) try{stmt.close();}catch(Exception es){}

				rs = null;
				stmt = null;
		}		
		return false;
	}


	public static boolean chkTester( Connection connection , String mphone ) throws SQLException
	{
		Connection		con		=		connection;
		Statement		stmt		=		null;
		ResultSet		rs			=		null;

		try
		{
			stmt = con.createStatement();
			
			rs = stmt.executeQuery("SELECT TOP 1 phonenum FROM GT_Tester WHERE phonenum = '"+mphone+"'");
			if(rs.next())
			{
				return true;
			}

			rs.close();
			return false;
		}
		catch(Exception e){			       

		}finally{ 
			if(rs !=null) try{rs.close();}catch(Exception se){}
			if(stmt !=null) try{stmt.close();}catch(Exception es){}

			rs = null;
			stmt = null;
		}		
		return false;
	}
}

⌨️ 快捷键说明

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