/**
* output package name
*/
package com.kingdee.eas.hse.common;

import java.util.Map;
import java.util.List;
import java.util.Iterator;
import com.kingdee.util.enums.IntEnum;

/**
* output class name
*/
public class DataCenterTypeEnum extends IntEnum
{
public static final int ORACLE_VALUE = 1;//alias=oracle
public static final int SQLSERVE_VALUE = 2;//alias=sqlserve
public static final int MYSQL_VALUE = 3;//alias=mysql

public static final DataCenterTypeEnum oracle = new DataCenterTypeEnum("oracle", ORACLE_VALUE);
public static final DataCenterTypeEnum sqlserve = new DataCenterTypeEnum("sqlserve", SQLSERVE_VALUE);
public static final DataCenterTypeEnum mysql = new DataCenterTypeEnum("mysql", MYSQL_VALUE);

/**
* construct function
* @param integer dataCenterTypeEnum
*/
private DataCenterTypeEnum(String name, int dataCenterTypeEnum)
{
super(name, dataCenterTypeEnum);
}

/**
* getEnum function
* @param String arguments
*/
public static DataCenterTypeEnum getEnum(String dataCenterTypeEnum)
{
return (DataCenterTypeEnum)getEnum(DataCenterTypeEnum.class, dataCenterTypeEnum);
}

/**
* getEnum function
* @param String arguments
*/
public static DataCenterTypeEnum getEnum(int dataCenterTypeEnum)
{
return (DataCenterTypeEnum)getEnum(DataCenterTypeEnum.class, dataCenterTypeEnum);
}

/**
* getEnumMap function
*/
public static Map getEnumMap()
{
return getEnumMap(DataCenterTypeEnum.class);
}

/**
* getEnumList function
*/
public static List getEnumList()
{
return getEnumList(DataCenterTypeEnum.class);
}

/**
* getIterator function
*/
public static Iterator iterator()
{
return iterator(DataCenterTypeEnum.class);
}
}
package com.kingdee.eas.hse.common.client;

import com.kingdee.eas.hse.common.DataCenterTypeEnum;
import com.kingdee.eas.rptclient.newrpt.util.MsgBox;
import com.kingdee.eas.util.SysUtil;
import java.sql.Connection;
import java.sql.DriverManager;

public class DataCenterUtils
{
public static Connection getConnect(String host, String port, String dataBaseName, String user, String password, DataCenterTypeEnum dataBaseType)
throws Exception
{
Connection conn = null;
String url = "";

if (dataBaseType.equals(DataCenterTypeEnum.oracle)) {
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
url = "jdbc:oracle:thin:@" + host + ":" + port + ":" + dataBaseName;
conn = DriverManager.getConnection(url, user, password);
}

if (dataBaseType.equals(DataCenterTypeEnum.sqlserve))
{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
url = "jdbc:microsoft:sqlserver://" + host + ":" + port +
";DatabaseName=" + dataBaseName;
conn = DriverManager.getConnection(url, user, password);
}

if (dataBaseType.equals(DataCenterTypeEnum.mysql)) {
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
url = "jdbc:mysql://" + host + "/myDB?user=" + user + "&password=" +
password + "&useUnicode=true&characterEncoding=8859_1";
conn = DriverManager.getConnection(url);
}

if (conn == null) {
MsgBox.showError("错误", "数据库连接错误");
SysUtil.abort();
}
return conn;
}
}