導航:首頁 > 編程語言 > Java資料庫連接

Java資料庫連接

發布時間:2022-01-24 15:55:01

java如何連接資料庫

java連接資料庫的代碼 位於MVC中的M(模型層)中,主要負責與資料庫打交道。
本人把我以前寫的代碼 加上注釋 給你看看 希望對你有幫助。
public class UserInfoDAO {
//驗證登陸名/密碼sql語句
//private -----這個sql語句只在本類內部使用,沒有必要public
//static -----sql語句僅僅一份就足夠了
//final -----sql語句一般在運行時不變,final修飾的變數相當於常量
//常量名所有字母大寫
private static final String SQL_CHECK_USERINFO =
"SELECT LOGINNAME,USERNAME,PASSWORD,AGE,ADDRESS FROM USERINFO WHERE LOGINNAME=? AND PASSWORD = ?";
public UserInfoDAO() {
}
/**
* 驗證登陸名/密碼方法
* @param u UserInfo
* @return boolean
*/
public boolean checkUser(UserInfo u) {
boolean b = false;//驗證是否成功的標識
Connection conn = null;//資料庫連接的引用
PreparedStatement pstmt = null;//PreparedStatement引用
ResultSet rs = null;//結果集引用
//調用ConnectionManager的方法,得到資料庫里連接實例
conn = ConnectionManager.getConnection();
try {
//通過Connection的prepareStatement()方法構建PreparedStatement實例,參數為sql語句
pstmt = conn.prepareStatement(SQL_CHECK_USERINFO);

//為sql語句中的?賦值,注意序號從1開始
pstmt.setString(1, u.getLoginName());
pstmt.setString(2, u.getPassword());

//執行查詢得到結果集
rs = pstmt.executeQuery();

//在結果集中循環,如果結果集中有記錄意味著驗證成功
b = rs.next();//標識置為true
while (rs.next()) {
b = true;//標識置為true
}
} catch (SQLException ex) {
System.out.println(ex.getMessage());
} finally {
//注意:一定在finally中釋放資料庫資源
cleanUP(rs, pstmt, conn);
}
return b;
}

private void cleanUP(ResultSet rs, PreparedStatement pstmt, Connection conn) {
try {
if (rs != null) {
rs.close();
}
if (pstmt != null) {
pstmt.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException ex) {
System.out.println(ex.getMessage());
}
}
}

㈡ java怎樣與資料庫連接

public static void main(String[] args) throws Exception {
// 裝載oracle對Driver的實現類
Class.forName("oracle.jdbc.OracleDriver");
// 獲取對oracle連接
String uri = "jdbc:oracle:thin:@資料庫IP:埠號:資料庫名"; // 用於表示連接資料庫的類型和地址
String user = "資料庫用戶名";
String pwd = "資料庫密碼";
Connection con = DriverManager.getConnection(uri, user, pwd);
Statement stmt = con.createStatement();
System.out.println(stmt);
String sql = "SELECT * from s_emp";
ResultSet rs = stmt.executeQuery(sql);
while (rs.next()) {
System.out.println(
rs.getString(1) + "," + rs.getString(2) + "," + rs.getString(3));
}

rs.close();
stmt.close();
con.close();
}

以上是小案例一個,不過你先要去下載Oracle的驅動JAR包,第一句話就是裝載的意思,其他資料庫也一樣,要有驅動JAR包

㈢ Java中如何與資料庫建立連接

導入java.sql包
一、載入要連接資料庫的驅動程序
//Jdbc-Odbc橋 和 Microsoft Access 資料庫
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
// SQL Server 驅動程序:
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
註:Class.forName()方法將給定的類載入到JVM,如果系統中不存在給定的類,則會引發異常
二、通過驅動程序管理器得到連接實例
Connection conn=null;
//1.
//1.1建立數據源
conn=DriverManager.getConnection("jdbc:odbc:MyDataSource"); //MyDataSource是數據源名稱
//1-2、不建立數據源
conn=DriverManager.getConnection("jdbc:odbc:;Driver=Microsoft Access Driver (*.mdb);DBQ=C:\\VBTest.mdb");
//2.SQL Server
conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;databasename=mydb","sa","");

註:DriverManager類跟蹤已注冊的驅動程序,通過getConnection(URL)方法, 找到一個能夠連接至URL中指定的資料庫驅動程序
它接收三個參數, 分別表示1 數據源的名稱、類型 2 用戶名(可選) 3 密碼(可選)
三、基於連接對象建立處理器對象
Statement stmt=conn.createStatement();
四、准備sql命令
String sql="select * from Student";
五、執行命令返回結果集
ResultSet rs=stmt.executeQuery(sql);
六、顯示結果集
while(rs.next())//只要後面有記錄
{
//對當前行的所有欄位遍歷
for(int i=1;i<=rs.getMetaData().getColumnCount();i++)
{
System.out.print(rs.getMetaData().getColumnName(i)+": ");//顯示欄位名
System.out.println(rs.getString(i));//顯示欄位當前值
}
System.out.println();
}

七、關閉資源

rs.close(); //關閉記錄集
stmt.close(); //關閉處理器對象
conn.close(); //關閉連接對象

預處理器的應用:

//3.基於連接對象建立預處理器對象
PreparedStatement pstmt=conn.prepareStatement("insert into student values(?,?,?,?)");

//4.給預處理對象的參數賦值
pstmt.setString(1,"8888");
pstmt.setString(2,"nemo");
pstmt.setString(3,"accp");
pstmt.setString(4,"sanxianglu");

//5.執行預處理命令
int i=pstmt.executeUpdate();
System.out.println(i+"條記錄已成功插入!");

㈣ java中使用JDBC連接資料庫的步驟

1.class.forName("驅動所在類及包名") 還需導入jar包
2.java.sql.Connection conn = DriverManager.getConnection(URL(即資料庫連接的ulr),USERNAME(對應數據的用戶名),PASSWORD(密碼));
3.String sql = "SELECT * FROM tableName WHERE id=?";
4.java.sql.PreparedStatement ptmt = conn.getPreparedStatement(sql);
5.ptmt.setInt(1,id值);
6.java.sql.ResultSet rs = ptmt.executeQuery();
7.while(rs.next){
System.out.println(rs.getString("欄位名"));
}
8.conn.close();ptmt.close();rs.close();

㈤ 如何實現java與資料庫的連接

JDBC連接資料庫
•創建一個以JDBC連接資料庫的程序,包含7個步驟:
1、載入JDBC驅動程序:
在連接資料庫之前,首先要載入想要連接的資料庫的驅動到JVM(Java虛擬機),
這通過java.lang.Class類的靜態方法forName(String className)實現。
例如:
try{
//載入MySql的驅動類
Class.forName("com.mysql.jdbc.Driver") ;
}catch(ClassNotFoundException e){
System.out.println("找不到驅動程序類 ,載入驅動失敗!");
e.printStackTrace() ;
}
成功載入後,會將Driver類的實例注冊到DriverManager類中。
2、提供JDBC連接的URL
•連接URL定義了連接資料庫時的協議、子協議、數據源標識。
•書寫形式:協議:子協議:數據源標識
協議:在JDBC中總是以jdbc開始
子協議:是橋連接的驅動程序或是資料庫管理系統名稱。
數據源標識:標記找到資料庫來源的地址與連接埠。
例如:(MySql的連接URL)
jdbc:mysql:
//localhost:3306/test?useUnicode=true&characterEncoding=gbk ;
useUnicode=true:表示使用Unicode字元集。如果characterEncoding設置為
gb2312或GBK,本參數必須設置為true 。characterEncoding=gbk:字元編碼方式。
3、創建資料庫的連接
•要連接資料庫,需要向java.sql.DriverManager請求並獲得Connection對象,
該對象就代表一個資料庫的連接。
•使用DriverManager的getConnectin(String url , String username ,
String password )方法傳入指定的欲連接的資料庫的路徑、資料庫的用戶名和
密碼來獲得。
例如:
//連接MySql資料庫,用戶名和密碼都是root
String url = "jdbc:mysql://localhost:3306/test" ;
String username = "root" ;
String password = "root" ;
try{
Connection con =
DriverManager.getConnection(url , username , password ) ;
}catch(SQLException se){
System.out.println("資料庫連接失敗!");
se.printStackTrace() ;
}
4、創建一個Statement
•要執行SQL語句,必須獲得java.sql.Statement實例,Statement實例分為以下3
種類型:
1、執行靜態SQL語句。通常通過Statement實例實現。
2、執行動態SQL語句。通常通過PreparedStatement實例實現。
3、執行資料庫存儲過程。通常通過CallableStatement實例實現。
具體的實現方式:
Statement stmt = con.createStatement() ;
PreparedStatement pstmt = con.prepareStatement(sql) ;
CallableStatement cstmt =
con.prepareCall("{CALL demoSp(? , ?)}") ;
5、執行SQL語句
Statement介面提供了三種執行SQL語句的方法:executeQuery 、executeUpdate
和execute
1、ResultSet executeQuery(String sqlString):執行查詢資料庫的SQL語句
,返回一個結果集(ResultSet)對象。
2、int executeUpdate(String sqlString):用於執行INSERT、UPDATE或
DELETE語句以及SQL DDL語句,如:CREATE TABLE和DROP TABLE等
3、execute(sqlString):用於執行返回多個結果集、多個更新計數或二者組合的
語句。
具體實現的代碼:
ResultSet rs = stmt.executeQuery("SELECT * FROM ...") ;
int rows = stmt.executeUpdate("INSERT INTO ...") ;
boolean flag = stmt.execute(String sql) ;
6、處理結果
兩種情況:
1、執行更新返回的是本次操作影響到的記錄數。
2、執行查詢返回的結果是一個ResultSet對象。
• ResultSet包含符合SQL語句中條件的所有行,並且它通過一套get方法提供了對這些
行中數據的訪問。
• 使用結果集(ResultSet)對象的訪問方法獲取數據:
while(rs.next()){
String name = rs.getString("name") ;
String pass = rs.getString(1) ; // 此方法比較高效
}
(列是從左到右編號的,並且從列1開始)
7、關閉JDBC對象
操作完成以後要把所有使用的JDBC對象全都關閉,以釋放JDBC資源,關閉順序和聲
明順序相反:
1、關閉記錄集
2、關閉聲明
3、關閉連接對象
if(rs != null){ // 關閉記錄集
try{
rs.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
if(stmt != null){ // 關閉聲明
try{
stmt.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
if(conn != null){ // 關閉連接對象
try{
conn.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}

㈥ Java中常見幾種資料庫連接方法

1:引入java.sql數據包;

import java.sql.*;

2:載入JDBC驅動程序

Class.forName(JDBC驅動包的名字).newInstance();

3:產生Connection

如已成功載入JDBC驅動程序,就可以利用載入的驅動程序連接資料庫

Connection con=DriverManager.getConnection(URL,UserName,Password);

URL: JDBC:(subprotocol):(subname)

subprotocol:子協議指定連接何種資料庫或用什麼方式連接資料庫;

subname:確立一個連接,可以是一個數據源名,也可是指向一個網上資料庫.

4:各種連接例:

(1) MySQL資料庫

String Dirver="com.mysql.jdbc.Driver";//驅動程序

String URL="jdbc:mysql://localhost:3306/db_name"; //連接的URL,db_name為資料庫名

String UserName="username"; //用戶名

String Password="password"; //密碼

Class.forName(Driver).newInstance(); //載入資料庫驅動

connection con=DriverManager.getConnection(URL,Username,Password);

(2) Microsoft SQL server 資料庫

String Driver="com.microsoft.jdbc.sqlserver.SQLServerDriver"; //驅動程序

String URL="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db_name";

//連接的URL,db_name為資料庫

String UserName="username"; //用戶名
String Password="password"; //密碼

Class.forName(Driver).newInstance();
connection con=DriverManager.getConnection(URL,Username,Password);

(3) sybase 資料庫

String Driver="com.sybase.jdbc.sybDriver"; //驅動程序
String URL="jdbc:Sybase://localhost:5007/db_name"; //連接的URL,db_name為資料庫

String UserName="username"; //用戶名
String Password="password"; //密碼

Class.forName(Driver).newInstance();
connection con=DriverManager.getConnection(URL,Username,Password);

(4) Oracle(用thin模式)資料庫

String Driver="oracle.jdbc.driver.OracleDriver"; //驅動程序
String URL="jdbc:oracle:thin://localhost:1521:orcl";

//連接的URL,orcl為資料庫的SID

String UserName="username"; //用戶名
String Password="password"; //密碼

Class.forName(Driver).newInstance();
connection con=DriverManager.getConnection(URL,Username,Password);

(5) 利用JDBC-ODBC橋連接

String Driver="sun.jdbc.odbc.JdbcodbcDriver"; //驅動程序
String URL="jdbc:odbc:dbsource"; //連接的URL,dbsource為數據源名

String UserName="username"; //用戶名
String Password="password"; //密碼

Class.forName(Driver).newInstance();
connection con=DriverManager.getConnection(URL,Username,Password);

㈦ Java資料庫連接 怎麼做

package hw.zy.connection;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ResourceBundle;
/**
* 連接資料庫
* @author 卓越
* 日期:2011-05-23
* */
public class DBConnection {

/**
* 得到一些配置文件的路徑
* */
static ResourceBundle bundle = ResourceBundle
.getBundle("hw.zy.connection.db");

/**
* 實例化DBConnection對象
* */
private static DBConnection instance = new DBConnection();

/**
* 得到一個對象
*
* @return 返回一個DBConnection對象
* */
public static DBConnection getInstance() {
return instance;
}

/**
* 構造函數私有化
* */
private DBConnection() {

}

/**
* 注冊驅動程序
* */
static {
try {

String driver = bundle.getString("driver");
Class.forName(driver);
} catch (ClassNotFoundException e) {
System.out.println("無法載入驅動!");
}
}

/**
* 連接資料庫
* @return 返回一個Connection 對象
* */
public static Connection getConnection() throws SQLException {
String url = bundle.getString("url");
String username = bundle.getString("username");
String password = bundle.getString("password");
return DriverManager.getConnection(url, username, password);
}

/**
* 釋放資源
*
* @param rs
* ,stmt,conn
* */
public void free(ResultSet rs, Statement stmt, Connection conn) {
try {
if (rs != null)
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
} finally {
try {
if (stmt != null)
try {
stmt.close();
} catch (SQLException e) {

e.printStackTrace();
}
} finally {
if (conn != null)
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
public static void main(String[] args) {
DBConnection aaConnection=new DBConnection();
try {
aaConnection.getConnection();
System.out.println("連接成功!");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}

}

配置文件 db.properties

driver=oracle.jdbc.OracleDriver
url=jdbc:oracle:thin:@localhost:1521:ORCL
username=liu
password=abc

㈧ java中如何實現資料庫連接

Class.formName(""); // 注冊驅動類.這個字元串是什麼,由要連接的資料庫決定.
Conncection conn = DriverManager.getConnection(url,user,pass); // 通過URL,資料庫用戶名,密碼,取得連接

下邊以Oracle為例.

Class.formName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:SID";
Conncection conn = DriverManager.getConnection(url,user,pass);

㈨ java怎麼和資料庫連接

1、載入驅動程序。

處理結果兩種情況:

1、執行更新返回的是本次操作影響到的記錄數。

2、執行查詢返回的結果是一個ResultSet對象。

ResultSet包含符合SQL語句中條件的所有行,並且它通過一套get方法提供了對這些 行中數據的訪問。

(9)Java資料庫連接擴展閱讀:


Statement

要執行SQL語句,必須獲得java.sql.Statement實例,Statement實例分為以下3 種類型:

1、執行靜態SQL語句。通常通過Statement實例實現。

2、執行動態SQL語句。通常通過PreparedStatement實例實現。

3、執行資料庫存儲過程。通常通過CallableStatement實例實現。

㈩ 怎麼使用JAVA連接資料庫

1、首先我們先建好資料庫,然後建立好程序的目錄,因為是適用於初學者的,所以就建立一個簡單的java project,如圖。

閱讀全文

與Java資料庫連接相關的資料

熱點內容
php讀取文檔內容 瀏覽:628
亞馬遜雲的虛擬雲伺服器的產品 瀏覽:893
打開php網站空白 瀏覽:165
phpxml讀取數據 瀏覽:335
如何安裝微信安卓版 瀏覽:121
51單片機藍牙傳送到手機 瀏覽:70
使用hmcl壓縮包用完不保存 瀏覽:267
php開啟phpfpm 瀏覽:655
看pdf常亮 瀏覽:835
麒麟系統如何用命令新建文件夾 瀏覽:134
php判斷是手機訪問還是電腦訪問 瀏覽:607
python停車系統收費模塊 瀏覽:804
哪個app可以約大巴車 瀏覽:183
linux中seq命令 瀏覽:829
代理伺服器的地址埠號碼 瀏覽:165
程序員給領導提意見 瀏覽:463
哪裡可以看夏木的電影app 瀏覽:454
如何辨別原裝數據線安卓 瀏覽:631
手機pc游戲解壓教程 瀏覽:696
安卓怎麼設置高清動態壁紙 瀏覽:777