首先定义一个接口
package cn.edu.nwsuaf.cie.aisa.wsc.operation;
import java.sql.Connection;
/**
* @author
* ���ڣ�2013-7-14
*/
public interface ConnectionSource {
public Connection getConnection();
}
接下来就是对这个接口的实现
package cn.edu.nwsuaf.cie.aisa.wsc.operation;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import cn.edu.nwsuaf.cie.aisa.wsc.informationpushmain.InformationPush;
/**
* @author ���ܣ� ���ڣ�2013-7-14 �ļ�¼��
*/
public class DBConnectionSourceImpl implements ConnectionSource {
Proopertiess properties =InformationPush.PROPERTIES;
@Override
public Connection getConnection(){
// TODO Auto-generated method stub
Connection connection = null;
if (InformationPush.PROPERTIES.getDataSource().getDbtype().equals("mysql")) {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String URL = InformationPush.PROPERTIES.getDataSource().getUrl();
String USENAME = InformationPush.PROPERTIES.getDataSource().getUser();
String PASSWORD = InformationPush.PROPERTIES.getDataSource().getPassword();
try {
connection = (Connection) DriverManager.getConnection(URL,
USENAME, PASSWORD);
return connection;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} else if (InformationPush.PROPERTIES.getDataSource().getDbtype().equals("sqlserver")) {
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
String URL = InformationPush.PROPERTIES.getDataSource().getUrl();
String USER = InformationPush.PROPERTIES.getDataSource().getUser();
String PWD = InformationPush.PROPERTIES.getDataSource().getPassword();
try {
connection = DriverManager.getConnection(URL, USER, PWD);
return connection;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
else if (InformationPush.PROPERTIES.getDataSource().getDbtype().equals("oracle")) {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
String URL = InformationPush.PROPERTIES.getDataSource().getUrl();
String USER = InformationPush.PROPERTIES.getDataSource().getUser();
String PWD = InformationPush.PROPERTIES.getDataSource().getPassword();
try {
connection = DriverManager.getConnection(URL, USER, PWD);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} else if (InformationPush.PROPERTIES.getDataSource().getDbtype().equals("access")) {
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
String URL = InformationPush.PROPERTIES.getDataSource().getUrl();
String USER = InformationPush.PROPERTIES.getDataSource().getUser();
String PWD = InformationPush.PROPERTIES.getDataSource().getPassword();
try {
connection = DriverManager.getConnection(URL, USER, PWD);
return connection;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return connection;
}
}