您好,登錄后才能下訂單哦!
這篇文章主要介紹“java如何連接數(shù)據(jù)庫(kù)”,在日常操作中,相信很多人在java如何連接數(shù)據(jù)庫(kù)問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”java如何連接數(shù)據(jù)庫(kù)”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!
閱前須知
java 項(xiàng)目要連接數(shù)據(jù)需要有相應(yīng)的驅(qū)動(dòng)??梢郧巴倬W(wǎng)下載相應(yīng)的驅(qū)動(dòng)包
如果使用 maven 項(xiàng)目,可以在 pom 文件中添加如下依賴(lài):
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.25</version>
</dependency>
注:小編使用的是8.0.25版本的數(shù)據(jù)庫(kù),所以版本號(hào)是8.0.25,不同版本請(qǐng)自行修改。
連接數(shù)據(jù)庫(kù)與基本操作(代碼附帶注釋?zhuān)?/strong>
import java.sql.*;//導(dǎo)入sql包才能進(jìn)行jdbc操作
public class App {
public static void main(String[] args){
String url ="jdbc:mysql://127.0.0.1:3306/";//數(shù)據(jù)庫(kù)主機(jī)地址
String database ="w3c";//數(shù)據(jù)庫(kù)名
String encoding = "?characterEncoding=UTF-8";//數(shù)據(jù)庫(kù)字符集
String username = "root";//連接的用戶名
String password = "root";//連接的密碼
String insertSQL = " insert into newtable values (8,'username','123'); ";//插入SQL語(yǔ)句
String selectSQL = "select * from newtable";//查詢(xún)SQL語(yǔ)句
Connection connection = null; //初始化數(shù)據(jù)庫(kù)連接
Statement statement = null; //初始化statement
try {
connection= DriverManager.getConnection(url+database+encoding,
username, password);//創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)連接
statement= connection.createStatement();//創(chuàng)建一個(gè)statement
//statement是java執(zhí)行數(shù)據(jù)庫(kù)操作的重要接口,用來(lái)執(zhí)行簡(jiǎn)單的sql語(yǔ)句
// 注意:使用的是 java.sql.Statement,不要不小心使用到: com.mysql.jdbc.Statement;
statement.execute(insertSQL);//使用excute()方法可以執(zhí)行創(chuàng)建,增加,刪除,插入等SQL語(yǔ)句
ResultSet result = statement.executeQuery(selectSQL);//使用excuteQuery()可以執(zhí)行查詢(xún)語(yǔ)句,并將結(jié)果集返回給ResultSet
//數(shù)據(jù)展示方法,不深入介紹
while(result.next()){//使用next方法可以一行一行的取數(shù)據(jù),如果要全部取出,可以先存在一個(gè)數(shù)組里
int id=result.getInt(1);//獲取第一列的數(shù)據(jù)
String user=result.getString(2);//獲取第二列的數(shù)據(jù)
String pwd=result.getString(3);//獲取第三列的數(shù)據(jù)
System.out.println("編號(hào):"+id+",用戶名:"+user+",密碼:"+pwd);
System.out.println("-----------------------");
}
} catch (SQLException e) {
e.printStackTrace();
}finally {
// 數(shù)據(jù)庫(kù)的連接時(shí)有限資源,相關(guān)操作結(jié)束后,養(yǎng)成關(guān)閉數(shù)據(jù)庫(kù)的好習(xí)慣
// 先關(guān)閉Statement
if (statement != null)
try {
statement.close();//關(guān)閉statement
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 后關(guān)閉Connection
if (connection != null)
try {
connection.close();//關(guān)閉數(shù)據(jù)庫(kù)連接
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
到此,關(guān)于“java如何連接數(shù)據(jù)庫(kù)”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!
免責(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)容。