激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - java連接orcale數據庫示例分享

java連接orcale數據庫示例分享

2019-11-10 15:11java教程網 JAVA教程

這篇文章主要介紹了java連接orcale數據庫示例,需要的朋友可以參考下

database.properties 

復制代碼代碼如下:

jdbc.driver_class=oracle.jdbc.driver.OracleDriver
jdbc.connection.url=jdbc:oracle:thin:@localhost:1521:orcl
jdbc.connection.username=scott
jdbc.connection.password=tiger

 

ConfigManager.java

復制代碼代碼如下:


import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

 

//讀取配置文件(屬性文件)的工具類
public class ConfigManager {
 private static ConfigManager configManager;
 // properties.load(inputStream);讀取屬性文件
 private static Properties properties;

 // 在構造工具類時,進行配置文件的讀取
 private ConfigManager() {
  String configFile = "database.properties";
  properties = new Properties();
  InputStream is = ConfigManager.class.getClassLoader()
    .getResourceAsStream(configFile);
  try {
   // 讀取配置文件
   properties.load(is);
   is.close();
  } catch (IOException e) {
   e.printStackTrace();
  }
 }

 // 通過單例模式設置實例化個數
 public static ConfigManager getInstance() {
  if (configManager == null) {
   configManager = new ConfigManager();
  }
  return configManager;
 }

 // 通過key獲取對應的value
 public String getString(String key) {
  return properties.getProperty(key);
 }
}

 

BaseDao.java

復制代碼代碼如下:


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

 

import com.book.util.ConfigManager;

//基類:數據庫操作通用類
public class BaseDao {
 protected Connection conn;
 protected PreparedStatement ps;
 protected Statement stmt;
 protected ResultSet rs;

 // 獲取數據庫連接
 public boolean getConnection() {
  // // 讀取配置信息
  String driver = ConfigManager.getInstance().getString(
    "jdbc.driver_class");
  String url = ConfigManager.getInstance().getString(
    "jdbc.connection.url");
  String username = ConfigManager.getInstance().getString(
    "jdbc.connection.username");
  String password = ConfigManager.getInstance().getString(
    "jdbc.connection.password");
  // 加載JDBC驅動
  try {
   Class.forName(driver);
   // 與數據庫建立連接
   conn = DriverManager.getConnection(url, username, password);
  } catch (ClassNotFoundException e) {
   return false;
  } catch (SQLException e) {
   return false;
  }
  return true;
 }

 // 增刪改的通用方法
 public int executeUpdate(String sql, Object[] params) {
  int updateRows = 0;
  getConnection();
  try {
   ps = conn.prepareStatement(sql);
   // 填充占位符
   for (int i = 0; i < params.length; i++) {
    ps.setObject(i + 1, params[i]);
    System.out.println(i + 1 + "---" + params[i]);
   }
   System.out.println(sql);
   updateRows = ps.executeUpdate();
  } catch (SQLException e) {
   e.printStackTrace();
  }
  return updateRows;

 }

 // 查詢
 public ResultSet executeSQL(String sql, Object[] params) {
  getConnection();
  try {
   ps = conn.prepareStatement(sql);

   // 填充占位符
   for (int i = 0; i < params.length; i++) {
    ps.setObject(i + 1, params[i]);
   }
   rs = ps.executeQuery();
  } catch (SQLException e) {
   e.printStackTrace();
  }
  return rs;

 }

 // 關閉資源
 public void closeAll(){
  try {
   if(rs!=null){
    rs.close();
   }
   if(stmt!=null){
    stmt.close();
   }
   if(ps!=null){
    ps.close();
   }
   if(conn!=null){
    conn.close();
   }
  } catch (SQLException e) {
   e.printStackTrace();
  }
 }
}

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产色91| 91精品国产99久久久久久 | 国产精品久久亚洲 | 亚洲影视中文字幕 | 失禁高潮抽搐喷水h | 亚洲男人的天堂在线视频 | 特一级黄色毛片 | 成人在线观看免费观看 | 亚洲成人在线免费 | 精品国内视频 | 中文字幕在线观看成人 | 黄色a级片视频 | 色综合久久久久久久粉嫩 | 日韩精品中文字幕一区二区 | 精品爱爱 | 欧美精品一区二区三区四区 | 蜜桃视频在线免费播放 | 欧美黄一级 | 国内精品免费一区二区2001 | 精品中文字幕久久久久四十五十骆 | 日本逼逼视频 | 亚洲视频精选 | 国产毛片毛片 | 一级毛片免费高清 | 久久久久久久国产视频 | 久久久久久久久久久一区 | 依依成人综合 | 欧美日本不卡 | 成人做爰高潮片免费视频美国 | 55夜色66夜色国产精品视频 | 特一级毛片 | 国产一级免费电影 | 日韩蜜桃视频 | 亚洲成人黄色片 | 极品美女一级毛片 | 精品中文字幕视频 | 久久久国产电影 | 国产成人网 | 最新欧美精品一区二区三区 | 国产一级淫片a级aaa | www.48xx.com|