java之資料庫操作,java之資料庫操作概念

本文目錄一覽:

java怎麼操作資料庫呢?

jdbc連接資料庫,DriverManger等初始化連接,prepareStatement語句執行sql,ResultSet拿到執行結果,while result.hasNext循環拿到數據值等。

如果不用jdbc,可以用框架,hibernate,mybatis都是可以的。

詳情可以私聊我,手機打字太累了。

java 操作 資料庫

Java連接資料庫是使用具體資料庫的JDBC驅動程序來實現的,每一個資料庫的驅動程序不同。

以下是一段示例代碼:

1.Class.forName(“oracle.jdbc.driver.OracleDriver”).newInstance(); //載入資料庫JDBC驅動,該驅動會自動註冊連接所需信息。

2.String url=”jdbc:oracle:thin:@localhost:1521:orcl”; //定義連接字元串

String user=”test”; //用戶名

String password=”test”; //密碼

3.Connection conn= DriverManager.getConnection(url,user,password);//通過DriverManager獲取資料庫連接引用

4.Statement sql = conn.createStatement(Resultset.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);//生成一個Statement

5.ResultSet rs = sql.executeQuery(“SELECT * FROM 表”);//獲取記錄集引用

6.System.out.println(rs(‘欄位一’));//輸出當前一行表頭為『欄位一』的數據。

以下再提供給你幾個常用資料庫的連接方式(驅動通常都是一個jar包,可以去資料庫提供商官網下載):

1、Oracle8/8i/9i資料庫(thin模式)

Class.forName(“oracle.jdbc.driver.OracleDriver”).newInstance();

String url=”jdbc:oracle:thin:@localhost:1521:orcl”;

//orcl為資料庫的SID

String user=”test”;

String password=”test”;

Connection conn= DriverManager.getConnection(url,user,password);

2、DB2資料庫

Class.forName(“com.ibm.db2.jdbc.app.DB2Driver “).newInstance();

String url=”jdbc:db2://localhost:5000/sample”;

//sample為你的資料庫名

String user=”admin”;

String password=””;

Connection conn= DriverManager.getConnection(url,user,password);

3、Sql Server7.0/2000資料庫

Class.forName(“com.microsoft.jdbc.sqlserver.SQLServerDriver”).newInstance();

String url=”jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb”;

//mydb為資料庫

String user=”sa”;

String password=””;

Connection conn= DriverManager.getConnection(url,user,password);

4、Sybase資料庫

Class.forName(“com.sybase.jdbc.SybDriver”).newInstance();

String url =” jdbc:sybase:Tds:localhost:5007/myDB”;

//myDB為你的資料庫名

Properties sysProps = System.getProperties();

SysProps.put(“user”,”userid”);

SysProps.put(“password”,”user_password”);

Connection conn= DriverManager.getConnection(url, SysProps);

5、Informix資料庫

Class.forName(“com.informix.jdbc.IfxDriver”).newInstance();

String url =

“jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver;

user=testuser;password=testpassword”;

//myDB為資料庫名

Connection conn= DriverManager.getConnection(url);

6、MySQL資料庫

Class.forName(“org.gjt.mm.mysql.Driver”).newInstance();

String url =”jdbc:mysql://localhost/myDB?user=softpassword=soft1234useUnicode=truecharacterEncoding=8859_1″

//myDB為資料庫名

Connection conn= DriverManager.getConnection(url);

7、PostgreSQL資料庫

Class.forName(“org.postgresql.Driver”).newInstance();

String url =”jdbc:postgresql://localhost/myDB”

//myDB為資料庫名

String user=”myuser”;

String password=”mypassword”;

Connection conn= DriverManager.getConnection(url,user,password);

另外一種方式是針對Windows的,首先建立一個DSN,然後使用Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);和”jdbc:odbc:數據源名稱”來獲取連接引用,不過這樣平台依賴性很大,不推薦這樣做。

希望我的回答對你有所幫助!

java操作資料庫的方式有哪些

JDBC是java資料庫連接技術的簡稱,它提供了連接各種資料庫的能力,這便使程序的可維護性和可擴展性大大的提高了.JDBC連接資料庫常見的驅動方式有兩種,一種是jdbc-odbc即橋連另外一種是純java驅動.一般在做java開發的時候用第二種.so前一種我就不說了,純java驅動方式連接步驟如下:

1.先把一個jdbc的jar包導入到項目(用MyEclipse開發)的lib中.

2.代碼如下:

[c-sharp] view plain copy

import java.sql.*;

/**

* 連接資料庫幫助類

* @author Administrator

*

*/

public class BaseDao {

private static final String DRIVER=”com.microsoft.sqlserver.jdbc.SQLServerDriver”;

private static final String URL = “jdbc:sqlserver://localhost:1433;DatabaseName=LibraryManageSystem”;

private static final String USERNAME=”sa”;

private static final String PASSWORD=”sa”;

/**

* 連接資料庫

* @return 資料庫連接對象

* @throws ClassNotFoundException

* @throws SQLException

*/

public Connection getConn()throws ClassNotFoundException,SQLException{

Class.forName(DRIVER);

Connection conn = DriverManager.getConnection(URL,USERNAME,PASSWORD);

return conn;

}

/**

* 釋放資源

* @param conn

* @param pstmt

* @param rs

* @throws SQLException

*/

public void closeAll(Connection conn,PreparedStatement pstmt,ResultSet rs)throws SQLException{

if(rs!=null){

rs.close();

}

if(pstmt!=null){

pstmt.close();

}

if(conn!=null){

conn.close();

}

}

/**

* 執行SQL語句,可以進行增、刪、改的操作

* @param sql

* @return 影響條數

* @throws ClassNotFoundException

* @throws SQLException

*/

public int executeSQL(String sql)throws ClassNotFoundException,SQLException{

Connection conn = this.getConn();

PreparedStatement pstmt = conn.prepareStatement(sql);

int number = pstmt.executeUpdate();

this.closeAll(conn, pstmt, null);

return number;

}

}

從代碼知道首先吧jdbc驅動類裝載java虛擬機中,即Class.forName(DRIVER);其次載入驅動並建立於資料庫的連接Connection conn = DriverManager.getConnection(URL,USERNAME,PASSWORD);;然後發送SQL語句並的到結果集.之後處理結果,最後要關閉資料庫的連接,釋放資源.當然我說的這樣連接資料庫的方式使用的軟體是sql和MyEclipse.

使用配置文件來連接資料庫,當然這樣的連接需要進行一些配置.其實這樣的連接用專業術語來說就是連接池,連接池是負責分配管理和釋放資料庫連接.它允許用用程序重複使用一個現有的資料庫連接不再重複建立連接.釋放空閑時間超過最大空閑時間的資料庫連接以避免因為沒有釋放資料庫而引起的資料庫遺漏.

連接池的創建分為以下幾個步驟:1.配置context.xml文件  這個文件是伺服器(指tomcat)的一個conf文件夾中,拷貝出來放入項目的lib文件夾中,具體配置如下:

[c-sharp] view plain copy

Resource name=”jdbc/book” auth=”Container” type=”javax.sql.DataSource”

maxActive=”100″ maxIdle=”20″ maxWait=”100″ username=”sa” password=”sa”

driverClassName=”com.microsoft.sqlserver.jdbc.SQLServerDriver”

url=”jdbc:sqlserver://localhost:1433;dataBaseName=book”

/在config.xml文件中加入Resource標籤,然後對資料庫信息進行配置,當然這個資料庫指的也是sqlserver有疑問可以qq757966892聯繫

之後把資料庫的驅動包,這裡指的是sql2005的包放入伺服器的lib中,這樣以後如果在你自己的機子上都不用在重新導入這個包了.

然後就是從MyEclipse中取得這樣的連接從而對資料庫進行一些操作具體代碼如下:

[c-sharp] view plain copy

package web.login.dao;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import javax.naming.Context;

import javax.naming.InitialContext;

import javax.sql.DataSource;

public class BaseDao {

protected Connection conn;

protected PreparedStatement ps;

protected ResultSet rs;

protected String sql;

public Connection getConn(){

try {

Context context=new InitialContext();

DataSource ds=(DataSource)context.lookup(“java:comp/env/jdbc/user”);

return ds.getConnection();

} catch (Exception e) {

e.printStackTrace();

return null;

}

}

public void closeAll(Connection conn,PreparedStatement ps,ResultSet rs){

try {

if(rs!=null){

rs.close();

rs=null;

}

if(ps!=null){

ps.close();

ps=null;

}

if(conn!=null){

conn.close();

conn=null;

}

} catch (Exception e) {

e.printStackTrace();

}

}

}

之後便可以建立業務類從而對資料庫進行操作.

在Java中如何對資料庫中的數據進行操作?

//此類為連接資料庫並進行資料庫的操作

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

public class Conn {

private static Connection conn = null;

private static Statement st = null;

private static ResultSet rs = null;

//建立資料庫的連接

public Conn(){

String url = “jdbc:sqlserver://localhost:1433;databaseName=ZYGX”;

String user = “sa”;

String password = “123”;

try {

Class.forName(“com.microsoft.sqlserver.jdbc.SQLServerDriver”);

conn = DriverManager.getConnection(url, user, password);

st = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);

} catch (ClassNotFoundException e) {

e.printStackTrace();

} catch (SQLException e) {

e.printStackTrace();

}

}

// 通過不同 的sql語句,得到相應Resultset結果集

public ResultSet getRs(String sql){

try{

rs= st.executeQuery(sql);

}catch(SQLException e){

e.printStackTrace();

}

return rs;

}

// 根據不同的sql語句,執行資料庫的更新操作

public int updata(String sql){

int num=0;

try{

num = st.executeUpdate(sql);

}catch(SQLException e){

e.printStackTrace();

}

return num;

}

// 關閉資料庫連接相應的資源

public void close(){

try{

if(rs!=null){

rs.close();

rs = null;

}

if(st!=null){

st.close();

st = null;

}

if(conn!=null){

conn.close();

conn = null;

}

}catch(SQLException e){

e.printStackTrace();

}

}

}

———————————————————————-

//可以對button里添加動作按鈕:

final JButton button = new JButton();

button.addActionListener(new ActionListener() {

public void actionPerformed(final ActionEvent e) {

Conn conn =new Conn();

String sql1=”select * from aa where name='”+name+”‘ “;//按name值查找

ResultSet rs = conn.getRs(sql1);

try {

while(rs.next()){

int n=rs.getString(“type”);

}

} catch (SQLException e) {

e.printStackTrace();

}

String name=textField.getText();

String sql=”update aa set tittle='”+name+”‘ “;//從aa表將title欄位的值改成textField里的name值

String sql2 =”delete from aa where name='”+name+”‘”;//從aa表將按取得name的值刪除該行數據

String sql3 = “insert into aa (name,uname) values (‘”+name+”‘,'”‘)”; //將name,uname值新增到aa表

if(conn.update(sql)==1){

System.out.print(“修改成功”);

}

if(conn.update(sql2)==1){

System.out.print(“刪除成功”);

}

if(conn.update(sql3)==1){

System.out.print(“新增成功”);

}

}

});

怎麼使用JAVA連接資料庫?

1、載入驅動程序。

2、創建連接對象。

3、創建sql語句執行對象 。

4、執行sql語句。

5、對執行結果進行處理。

6、關閉相關的連接對象即可(順序跟聲明的順序相反)。

處理結果兩種情況:

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

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

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

擴展資料:

Statement

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

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

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

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

參考資料:百度百科JAVA

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/198333.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-04 10:24
下一篇 2024-12-04 10:24

相關推薦

  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Bean載入過程

    Java Bean載入過程涉及到類載入器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean載入的過程。 一、類載入器 類載入器是Java虛擬機…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Python棧操作用法介紹

    如果你是一位Python開發工程師,那麼你必須掌握Python中的棧操作。在Python中,棧是一個容器,提供後進先出(LIFO)的原則。這篇文章將通過多個方面詳細地闡述Pytho…

    編程 2025-04-29
  • Python 常用資料庫有哪些?

    在Python編程中,資料庫是不可或缺的一部分。隨著互聯網應用的不斷擴大,處理海量數據已成為一種趨勢。Python有許多成熟的資料庫管理系統,接下來我們將從多個方面介紹Python…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發布。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Java判斷字元串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字元串中是否存在多個指定字元: 一、字元串遍歷 字元串是Java編程中非常重要的一種數據類型。要判斷字元串中是否存在多個指定字元…

    編程 2025-04-29
  • openeuler安裝資料庫方案

    本文將介紹在openeuler操作系統中安裝資料庫的方案,並提供代碼示例。 一、安裝MariaDB 下面介紹如何在openeuler中安裝MariaDB。 1、更新軟體源 sudo…

    編程 2025-04-29

發表回復

登錄後才能評論