溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

如何在java中使用jdbc連接數(shù)據(jù)庫(kù)

發(fā)布時(shí)間:2021-03-26 17:09:26 來(lái)源:億速云 閱讀:106 作者:Leah 欄目:編程語(yǔ)言

這篇文章將為大家詳細(xì)講解有關(guān)如何在java中使用jdbc連接數(shù)據(jù)庫(kù),文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

具體內(nèi)容如下

package com.tr.jdbc;

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

import org.apache.commons.dbcp2.BasicDataSource;

public class CollectionFactory {

 private final static String dbDriver = "com.mysql.jdbc.Driver";
 private final static String dbUrl="jdbc:mysql://localhost:3306/xtest?useUnicode=true&characterEncoding=UTF-8" ;
 private final static String dbUser="root";
 private final static String dbpwd="root";

 private static BasicDataSource dataSource;
 //創(chuàng)建dbcp的簡(jiǎn)單數(shù)據(jù)源并初始化相關(guān)屬性
 static{
  dataSource = new BasicDataSource();
  dataSource.setDriverClassName(dbDriver);
  dataSource.setUrl(dbUrl);
  dataSource.setUsername(dbUser);
  dataSource.setPassword(dbpwd);

  //指定數(shù)據(jù)庫(kù)連接池初始化連接數(shù)
  dataSource.setInitialSize(10);
  //設(shè)定同時(shí)向數(shù)據(jù)庫(kù)申請(qǐng)的最大連接數(shù)
  dataSource.setMaxTotal(50);
  //設(shè)置連接池中保持的最少連接數(shù)量
  dataSource.setMinIdle(5);
  //其他屬相...參考Apache的公開(kāi)文檔
 }
 //創(chuàng)建數(shù)據(jù)庫(kù)連接對(duì)象--并且多線程并發(fā)處理(注意Connection導(dǎo)的是Java.sql的包)
 public static synchronized Connection creatConnection(){
  Connection conn = null;
  if(dataSource!=null&&!dataSource.isClosed()){
   try {
    conn = dataSource.getConnection();
   } catch (SQLException e) {

    e.printStackTrace();
   }
  }
  return conn;

 }

 public static void main(String[] args) {
  String sql = "select * from s_t_user";
  Connection conn = creatConnection();
  Statement statement = null;
  ResultSet resultSet = null;
  try {
   statement = conn.createStatement();
   resultSet= statement.executeQuery(sql);
   int row = 0;
   while(resultSet.next()){
    row++;
    System.out.println("記錄行"+row+"col2:"+resultSet.getString(2));
    }
  } catch (SQLException e) {
   e.printStackTrace();
  }finally {
   if (conn!=null) {
    try {
     conn.close();
    } catch (SQLException e) {  
     e.printStackTrace();
    }
   }
  }

 }

}

一定要注意不能導(dǎo)錯(cuò)包,我剛才就是因?yàn)锽asicDataSource的包導(dǎo)錯(cuò)了,寫(xiě)成了import org.apache.tomcat.dbcp.dbcp2.BasicDataSource;應(yīng)該是import org.apache.commons.dbcp2.BasicDataSource; 而一直報(bào)這樣的錯(cuò)誤:

如何在java中使用jdbc連接數(shù)據(jù)庫(kù)

關(guān)于如何在java中使用jdbc連接數(shù)據(jù)庫(kù)就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI