導航:首頁 > 編程語言 > java讀寫mysql

java讀寫mysql

發布時間:2022-12-22 08:03:50

『壹』 怎麼在java中讀取mysql資料庫

要看你是用框架還是傳統的JDBC連接了,如果是傳統的JDBC連接的話方法如下:

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");//載入資料庫驅動,不同資料庫載入的驅動不一樣,這個例子是sqlserver資料庫
Stringurl="jdbc:sqlserver://127.0.0.1:1433;databaseName=testDB";//IP:埠;databaseName:資料庫名
Stringsql="selectnamefromt_user";//sql查詢語句
Connectioncon=DriverManager.getConnection(url,username,password);//url:
資料庫連接串userName:資料庫登錄賬號passWord:資料庫登錄密碼
Statementstmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
ResultSetrs=stmt.executeQuery(sql);
//用戶對象集合
List<User>userList=newArrayList<User>();
while(rs.next()){
Useruser=newUser();
user.setName=rs.getString("name");
userList.add(user);
}

『貳』 Java mysql資料庫多線程讀寫問題,謝謝!

設置conn.autocommit(false)
這樣就不會存在自動提交 也就是說 你的操作還只是內存操作 別人看到的只能是沒有變化的表 直到你循環完畢用conn.commit()

『叄』 怎麼在java中操作mysql資料庫

1.安裝好jre環境和和jdk,設置好環境變數,很基礎,網上教程很多;

2.安裝mysql資料庫,不用設置數據源和環境變數,只是安裝好就可以,具體過程見網上教程,有時候不好安裝,可能是因為之前安裝沒有卸載干凈等原因,多查一查怎麼弄,多試一試就成功了;

3.為了方便操作資料庫,為mysql安裝一個可視化界面Navicat,安裝過程超級簡單,使用也超級簡單,傻瓜操作;

4.怎麼連接java和mysql呢,這個搞了好久,網上下載一個壓縮包mysql-connector-java-5.0.8.zip,解壓,將其中的mysql-connector-java-5.0.8-bin.jar文件復制一份粘貼在C:\Program
Files\Java\jre7\lib\ext目錄下,也就是放在jre\lib\ext下就行;

5.接下來還要設置一次環境變數,第4步中的壓縮包解壓後,將解壓後文件中mysql-connector-java-5.0.8-bin.jar添加到環境變數classpath中;

『肆』 java連接資料庫(mysql)寫入和讀取的類怎麼寫,請帶詳細注釋.

import java.sql.*;

public class JDBCTest {

public static void main(String[] args){

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

// URL指向要訪問的資料庫名scutcs
String url = "jdbc:mysql://127.0.0.1:3306/scutcs";

// MySQL配置時的用戶名
String user = "root";

// MySQL配置時的密碼
String password = "root";

try {
// 載入驅動程序
Class.forName(driver);

// 連續資料庫
Connection conn = DriverManager.getConnection(url, user, password);

if(!conn.isClosed())
System.out.println("Succeeded connecting to the Database!");

// statement用來執行SQL語句
Statement statement = conn.createStatement();

// 要執行的SQL語句
String sql = "select * from student";

// 結果集
ResultSet rs = statement.executeQuery(sql);

System.out.println("-----------------");
System.out.println("執行結果如下所示:");
System.out.println("-----------------");
System.out.println(" 學號" + "\t" + " 姓名");
System.out.println("-----------------");

String name = null;

while(rs.next()) {

// 選擇sname這列數據
name = rs.getString("sname");

// 首先使用ISO-8859-1字元集將name解碼為位元組序列並將結果存儲新的位元組數組中。
// 然後使用GB2312字元集解碼指定的位元組數組
name = new String(name.getBytes("ISO-8859-1"),"GB2312");

// 輸出結果
System.out.println(rs.getString("sno") + "\t" + name);
}

rs.close();
conn.close();

} catch(ClassNotFoundException e) {

System.out.println("Sorry,can`t find the Driver!");
e.printStackTrace();

} catch(SQLException e) {

e.printStackTrace();

} catch(Exception e) {

e.printStackTrace();

}
}
}

『伍』 JAVA怎麼讀取mysql資料庫啊,救命

importjava.sql.*;
publicclasslogin{
publicstaticvoidmain(String[]args){
try{

Class.forName("com.mysql.jdbc.Driver");
Connectionct=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/qj","root","admin");
Statementsm=ct.createStatement();
//sm.executeQuery("useqj");
ResultSetrs=sm.executeQuery("='admin'");
Stringpasswd=rs.getString(1);
System.out.println(passwd);
}
catch(Exceptione){
e.printStackTrace();}
}

}

『陸』 java連接資料庫(mysql)寫入和讀取的類怎麼寫,請帶詳細注釋



importjava.sql.Connection;

importjava.sql.DriverManager;

importjava.sql.Statement;

public class InsertDemo01{

//定義MySQL的資料庫驅動程序

public static final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;

//定義MySQL資料庫的連接地址

public static final String DBURL = "jdbc:mysql://localhost:3306/mldn" ;

//MySQL資料庫的連接用戶名

public static final String DBUSER = "root" ;

//MySQL資料庫的連接密碼

public static final String DBPASS = "mysqladmin" ;

public static void main(Stringargs[]) throws Exception {//所有的異常拋出

Connectionconn= null ;//資料庫連接

Statement stmt = null ;//資料庫操作

Class.forName(DBDRIVER) ;//載入驅動程序

Stringsql= "INSERT INTO user(name,password,age,sex,birthday) "+

" VALUES ('李興華','www.mldn.cn',30,'男','2008-08-27')" ;

conn=DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;

stmt =conn.createStatement() ;//實例化Statement對象

stmt.executeUpdate(sql) ;//執行資料庫更新操作

stmt.close() ;//關閉操作

conn.close() ;//資料庫關閉

}

};


『柒』 java讀取MySQL資料庫

在String
value
=
rs.getString("name");
之前要先rs.next();一下
你用這個來判斷密碼錯誤?
if(!rs.isBeforeFirst()){
JOptionPane.showMessageDialog(frame,
"Wrong
password!");
}
isBeforeFirst()
的意思是:獲取游標是否位於此
ResultSet
對象的第一行之前。

『捌』 java怎樣將讀取數據寫入資料庫

Java可以使用JDBC對資料庫進行讀寫。JDBC訪問一般分為如下流程:

一、載入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類中。

二、提供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:字元編碼方式。

三、創建資料庫的連接

要連接資料庫,需要向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() ;
}

四、創建一個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(? , ?)}") ;

五、執行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) ;

六、處理結果 兩種情況:
1、執行更新返回的是本次操作影響到的記錄數。

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

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

使用結果集(ResultSet)對象的訪問方法獲取數據:

while(rs.next()){

String name = rs.getString("name") ;

String pass = rs.getString(1); // 此方法比較高效(列是從左到右編號的,並且從列1開始)
}

七、關閉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() ;
}
}

(8)java讀寫mysql擴展閱讀

樣例

package first;

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 java.util.concurrent.Executors;

import java.util.concurrent.ScheledExecutorService;

import java.util.concurrent.TimeUnit;

public class lianjie {

public static void main(String[] args) {

Runnable runnable = new Runnable() {

public void run() {

//聲明Connection對象

Connection con;

//驅動程序名

String driver1 = "com.microsoft.sqlserver.jdbc.SQLServerDriver";

//URL指向要訪問的資料庫名

String url1 = "jdbc:sqlserver://IP地址和埠號;DateBaseName=資料庫名";

//MySQL配置時的用戶名

String user1 = "user";

//MySQL配置時的密碼

String password1 = "user";

//聲明Connection對象

Connection con1;

//驅動程序名

String driver2 = "com.microsoft.sqlserver.jdbc.SQLServerDriver";

//URL指向要訪問的資料庫名

String url2 = "jdbc:sqlserver://IP地址和埠號;DateBaseName=資料庫名";

//MySQL配置時的用戶名

String user2 = "user";

//MySQL配置時的密碼

String password2 = "user";

//遍歷查詢結果集

try {

//載入驅動程序

Class.forName(driver1);

//1.getConnection()方法,連接MySQL資料庫!!

con = DriverManager.getConnection(url1,user1,password1);

if(!con.isClosed())

System.out.println("成功連接到資料庫!");

try {

//載入驅動程序

Class.forName(driver2);

//1.getConnection()方法,連接MySQL資料庫!!

con1 = DriverManager.getConnection(url2,user2,password2);

if(!con1.isClosed())

System.out.println("成功連接到資料庫!");

//2.創建statement類對象,用來執行SQL語句!!

Statement statement = con.createStatement();

//要執行的SQL語句

String sql = "use 資料庫名 select * from 表名";

//3.ResultSet類,用來存放獲取的結果集!!

ResultSet rs = statement.executeQuery(sql);

//要執行的SQL語句

String sql1 = "use tiantiana insert into Table_1(tiantian,qiqi,yuyu)VALUES(?,?,?)";

//3.ResultSet類,用來存放獲取的結果集!!

PreparedStatement pst = con1.prepareStatement(sql1);

System.out.println ("tiantian"+"/t"+"qiqi"+"/t"+"yuyu");

while(rs.next()){

System.out.print(rs.getString(1));

System.out.print(rs.getString(2));

System.out.print(rs.getString(3));

pst.setString(1,rs.getString(1));

pst.setString(2,rs.getString(2));

pst.setString(3,rs.getString(3));

pst.executeUpdate();

}

pst.close();

rs.close();

//2.創建statement類對象,用來執行SQL語句!!

Statement statement1 = con.createStatement();

//要執行的SQL語句

String sql2 = "use 資料庫名 select * from 表名";

//3.ResultSet類,用來存放獲取的結果集!!

ResultSet rs1 = statement1.executeQuery(sql2);

//要執行的SQL語句

String sql3 = "use tiantiana insert into Table_2(tiantian1,qiqi1,yuyu1)VALUES(?,?,?)";

//3.ResultSet類,用來存放獲取的結果集!!

PreparedStatement pst1 = con1.prepareStatement(sql3);

System.out.println ("tiantian1"+"/t"+"qiqi1"+"/t"+"yuyu1");

while(rs1.next()){

System.out.print(rs1.getString(1));

System.out.print(rs1.getString(2));

System.out.print(rs1.getString(3));

pst1.setString(1,rs1.getString(1));

pst1.setString(2,rs1.getString(2));

pst1.setString(3,rs1.getString(3));

pst1.executeUpdate();

}

//關閉鏈接

rs1.close();

pst.close();

con1.close();

con.close();

} catch(ClassNotFoundException e) {

//資料庫驅動類異常處理

System.out.println("對不起,找不到驅動程序!");

e.printStackTrace();

} catch(SQLException e) {

//資料庫連接失敗異常處理

e.printStackTrace();

}catch (Exception e) {

// TODO: handle exception

e.printStackTrace();

}finally{

System.out.println("資料庫數據成功獲取!!");

}

} catch(ClassNotFoundException e) {

//資料庫驅動類異常處理

System.out.println("對不起,找不到驅動程序!");

e.printStackTrace();

} catch(SQLException e) {

//資料庫連接失敗異常處理

e.printStackTrace();

}catch (Exception e) {

// TODO: handle exception

e.printStackTrace();

}finally{

System.out.println("資料庫數據成功獲取!!");

}

}

};

ScheledExecutorService service = Executors

.();

// 第二個參數為首次執行的延時時間,第三個參數為定時執行的間隔時間

service.scheleAtFixedRate(runnable, 10, 60*2, TimeUnit.SECONDS);

}

}

閱讀全文

與java讀寫mysql相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:757
蘋果郵件無法連接伺服器地址 瀏覽:963
phpffmpeg轉碼 瀏覽:671
長沙好玩的解壓項目 瀏覽:145
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:737
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:485
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:382
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:349
風翼app為什麼進不去了 瀏覽:778
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:150
伊克塞爾文檔怎麼進行加密 瀏覽:892
app轉賬是什麼 瀏覽:163