这里以JDBC连接Oracle 10g为例
Java 连接数据库,可以通过JDBC的方式。 首先需要下载JDBC的jar包。
官方下载地址是: http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-10201-088211.html
可以下载ojdbc14.jar 这个版本。(支持JDK1.4;JDK1.5; JDK1.6 )
这个版本的下载地址是:(可能需要登录Oracle网站)
http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-10201-088211.html
实例代码如下:
- import java.sql.Connection;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- import java.util.ArrayList;
- import java.util.List;
- import javax.sql.PooledConnection;
- import oracle.jdbc.pool.OracleConnectionPoolDataSource;
- public class JDBCTest {
- private String url = null;
- /*
- *
- */
- public JDBCTest(String sHostName, String sPortNumber, String sSid) {
- url = "jdbc:oracle:thin:@" + sHostName + ":" + sPortNumber + ":" + sSid;
- // if JDK1.6 you also can use as
- // url = "jdbc:oracle:thin:@" + sHostName + ":" + sPortNumber + "/" + sSid;
- }
- public List<String> getList(String sUsrName, String sPassword, String sql) {
- List<String> resultList = new ArrayList<String>();
- try {
- OracleConnectionPoolDataSource ocpds = new OracleConnectionPoolDataSource();
- String url1 = System.getProperty("JDBC_URL");
- if (url1 != null)
- url = url1;
- ocpds.setURL(url);
- ocpds.setUser(sUsrName);
- ocpds.setPassword(sPassword);
- PooledConnection pc = ocpds.getPooledConnection();
- Connection conn = pc.getConnection();
- PreparedStatement pstmt = conn.prepareStatement(sql);
- ResultSet rset = pstmt.executeQuery();
- while (rset.next()) {
- resultList.add(rset.getString(1));
- }
- rset.close();
- pstmt.close();
- conn.close();
- pc.close();
- } catch (Exception e) {
- }
- return resultList;
- }
- /**
- * @param args
- */
- public static void main(String[] args) {
- // use you real info
- String sUsrName = "";
- String sPassword = "";
- String sql = "";
- JDBCTest jdbctest = new JDBCTest("localhost", "1521", "orcl");
- List<String> list = jdbctest.getList(sUsrName, sPassword, sql);
- System.out.println(list.size());
- }
- }
需要特别注意的是:
url = "jdbc:oracle:thin:@" + sHostName + ":" + sPortNumber + "/" + sSid;
在JDK1.6 中,可以使用如上的url . 也就是port 和sid之间可以用 “/” 分割。 在JDK 1.5 中就不能这样用了,只能使用 ":" 。
除了使用以上连接池的方式进行连接外, 当然也可以使用传统方式进行连接
- Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
- Connection conn = DriverManager.getConnection(url, suUserName,passWord);
原文链接:http://blog.csdn.net/oscar999/article/details/7305489
【编辑推荐】