串連oracle資料庫

來源:互聯網
上載者:User

1、直接以固定方式寫在一個java類裡進行串連,例如:

import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;/** * 封裝資料庫常用操作 * @author Administrator * */public class DbUtil {/** * 取得Connection * @return */public static Connection getConnection(){Connection conn = null;try {Class.forName("oracle.jdbc.driver.OracleDriver");String url = "jdbc:oracle:thin:@192.168.26.3:1521:bjpowernode";String username = "test";String password = "test";conn = DriverManager.getConnection(url,username,password);} catch (ClassNotFoundException e) {e.printStackTrace();}catch (SQLException e) {e.printStackTrace();}return conn;}public static void main(String[] arges){System.out.println(DbUtil.getConnection());}}

2、配合xml設定檔靈活的進行資料庫連接(更容易修改)例如:

import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;/** * 封裝資料庫常用操作 * @author Administrator * */public class DbUtil {/** * 取得Connection * @return */public static Connection getConnection(){Connection conn = null;try {JdbcConfig jdbcConfig = XmlConfigReader.getInstance().getJdbcConfig();Class.forName(jdbcConfig.getDriverName());String url = jdbcConfig.getUrl();String username = jdbcConfig.getUserName();String password = jdbcConfig.getPassword();conn = DriverManager.getConnection(url,username,password);} catch (ClassNotFoundException e) {e.printStackTrace();}catch (SQLException e) {e.printStackTrace();}return conn;}public static void main(String[] arges){System.out.println(DbUtil.getConnection());}}

JdbcConfig.java類(這裡面還重寫了toString()方法)

/** * jdbc配置資訊 * @author Administrator * */public class JdbcConfig {private String driverName;private String url;private String userName;private String password;public String getDriverName() {return driverName;}public void setDriverName(String driverName) {this.driverName = driverName;}public String getUrl() {return url;}public void setUrl(String url) {this.url = url;}public String getUserName() {return userName;}public void setUserName(String userName) {this.userName = userName;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}@Overridepublic String toString() {return this.getClass().getName() + "{driverName:" + driverName + ", url:" + url + ", userName:" + userName + ", password:" + password + "}";}}

XmlConfigReader.java類(讀取xml配置資訊使用了單例模式)

import java.io.InputStream;import org.dom4j.Document;import org.dom4j.DocumentException;import org.dom4j.Element;import org.dom4j.io.SAXReader;/** * 採用單利模式解析sys-config.xml檔案 * @param args */public class XmlConfigReader {////餓漢式(積極式載入)//private static XmlConfigReader instance = new XmlConfigReader();////private XmlConfigReader(){////}////public static XmlConfigReader getInstance(){//return instance;//}//懶漢試(消極式載入lazy)private static XmlConfigReader instance = null;//儲存jdbc相關配置資訊private JdbcConfig jdbcConfig = new JdbcConfig();private XmlConfigReader(){SAXReader reader = new SAXReader();InputStream in = Thread.currentThread().getContextClassLoader().getResourceAsStream("sys-config.xml");try {Document doc = reader.read(in);//取得jdbc相關的配置Element driverNameElt = (Element)doc.selectObject("/config/db-info/driver-name");Element urlElt = (Element)doc.selectObject("/config/db-info/url");Element userNameElt = (Element)doc.selectObject("/config/db-info/user-name");Element passwordElt = (Element)doc.selectObject("/config/db-info/password");//設定jdbc相關的配置jdbcConfig.setDriverName(driverNameElt.getStringValue());jdbcConfig.setUrl(urlElt.getStringValue());jdbcConfig.setUserName(userNameElt.getStringValue());jdbcConfig.setPassword(passwordElt.getStringValue());} catch (DocumentException e) {e.printStackTrace();}}public static synchronized XmlConfigReader getInstance(){if(instance == null){instance = new XmlConfigReader();}return instance;}//返回jdbc相關配置資訊public JdbcConfig getJdbcConfig(){return jdbcConfig;}public static void main(String[] args) {JdbcConfig jdbcConfig = XmlConfigReader.getInstance().getJdbcConfig();System.out.println(jdbcConfig);}}

sys-config.xml(設定檔)

<?xml version="1.0" encoding="UTF-8"?><config><db-info><driver-name>oracle.jdbc.driver.OracleDriver</driver-name><url>jdbc:oracle:thin:@192.168.26.3:1521:bjpowernode</url><user-name>test</user-name><password>test</password></db-info></config>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.