您的位置:首页 > 数据库 > Oracle

jdbc使用DataSource连接mysql,postgresql,oracle的代码

2011-11-15 15:55 681 查看
jdbc连接数据库,使用DataSource是推荐的方式

(jdbc驱动是当然要放进classpath里的,官网一般都有下载)

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;

import org.postgresql.ds.PGSimpleDataSource;

import oracle.jdbc.pool.OracleDataSource;

import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;

public class DBConnection {

/**
* @param args
* @throws SQLException
*/
public static void main(String[] args) throws SQLException {
// TODO Auto-generated method stub
MysqlDataSource mysqlDataSource = new MysqlDataSource();
// mysqlDataSource.setPassword("dev");
// mysqlDataSource.setUser("dev");
mysqlDataSource
.setURL("jdbc:mysql://localhost/forJava?user=dev&password=dev");
Connection conn = mysqlDataSource.getConnection();
Statement stmt = conn.createStatement();
stmt.executeUpdate("create table if not exists web\n" + "(\n"
+ "		id int not null primary key,\n" + "		name varchar(100),\n"
+ "		created timestamp,\n" + "		content blob\n" + ");\n" + "");
for (int i = 0; i < 1; i++) {
stmt.executeUpdate("insert into web (name,content) values ('HL','frgertrhrtnthtohioh')");
}
showResultSet(stmt.executeQuery("select * from web limit 10"));

// Driver driver = new com.mysql.jdbc.Driver();
// driver.connect("jdbc:mysql://localhost/forJava?user=dev&password=dev",
// null);

PGSimpleDataSource pgSimpleDataSource = new PGSimpleDataSource();
pgSimpleDataSource.setServerName("localhost");
pgSimpleDataSource.setDatabaseName("dev");
pgSimpleDataSource.setUser("dev");
pgSimpleDataSource.setPassword("dev");
conn = pgSimpleDataSource.getConnection();
// conn =
// DriverManager.getConnection("jdbc:postgresql://localhost/test",
// "dev", "dev");
showResultSet(conn.createStatement().executeQuery("select * from cities"));

OracleDataSource oraDataSource = new OracleDataSource();
// oraDataSource.setServerName("127.0.0.1");
// oraDataSource.setDatabaseName("HR");
// oraDataSource.setUser("HR");
// oraDataSource.setPassword("HR");
oraDataSource.setURL("jdbc:oracle:thin:hr/hr@//localhost:1521/XE");
conn = oraDataSource.getConnection();
stmt = conn.createStatement();
stmt.execute("select * from tab");
showResultSet(stmt.getResultSet());
stmt.execute("select * from jobs");
showResultSet(stmt.getResultSet());
stmt.execute("select * from DEPARTMENTS");
showResultSet(stmt.getResultSet());
}

static void showResultSet(ResultSet resultSet) throws SQLException {
ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
int num = resultSetMetaData.getColumnCount();
while (resultSet.next()) {
for (int i = 1; i <= num; i++) {
System.out.print(resultSetMetaData.getCatalogName(i) + " "
+ resultSet.getString(i));
}
System.out.println();
}
}
}


呃,在自己电脑上同时安装了mysql, postgresql,oracle,db2,sqlite的人是不是很蛋疼?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息