A.安裝MySql

01.png
1.安裝MySql,一路next,execute等待安裝過(guò)程完成。

02.png
2.在上圖1,設(shè)置密碼為root,之后點(diǎn)擊標(biāo)記2

02.png
3.將上圖標(biāo)記的地方自己設(shè)置用戶名,密碼;沒(méi)有標(biāo)記的地方,選擇跟上圖一樣的參數(shù)。

02.png
4.點(diǎn)擊上圖的next,之后一路點(diǎn)擊next或execute

02.png
5.點(diǎn)擊上圖的check,之后點(diǎn)擊next

02.png
6.上圖顯示MySQL安裝完畢。

01.png
7.桌面右下角出現(xiàn)標(biāo)記的圖標(biāo),表示MySQL安裝成功。

01.png
8.右鍵點(diǎn)擊MySql圖標(biāo),之后點(diǎn)擊標(biāo)記1,出現(xiàn)標(biāo)記2;標(biāo)記2分別表示啟動(dòng),停止,重啟數(shù)據(jù)庫(kù)。
B.安裝navicat,這是一款可視化的數(shù)據(jù)庫(kù)管理工具(支持增刪改查),支持的數(shù)據(jù)庫(kù)包含MySQL等

01.png
1.點(diǎn)擊上圖的連接,之后點(diǎn)擊標(biāo)記里的MySQL

01.png
2.設(shè)置上圖標(biāo)記的內(nèi)容,之后點(diǎn)擊確定。

01.png
3.雙擊以上標(biāo)記的按鈕,chengchao相當(dāng)于本地的服務(wù)器

01.png
4.鼠標(biāo)右鍵點(diǎn)擊chengchao,之后點(diǎn)擊標(biāo)記新建數(shù)據(jù)庫(kù)

01.png
5.在上圖的標(biāo)記中,輸入數(shù)據(jù)庫(kù)名,字符集選擇和上圖相同。
C.新建數(shù)據(jù)庫(kù)表

01.png
1.點(diǎn)擊標(biāo)記1,之后點(diǎn)擊標(biāo)記2;

01.png
2.點(diǎn)擊標(biāo)記1,出現(xiàn)標(biāo)記2;

01.png
3.點(diǎn)擊上圖標(biāo)記中的保存,輸入表名Student

01.png
4.點(diǎn)擊標(biāo)記Student,出現(xiàn)上圖右邊的內(nèi)容

01.png
5.在上圖標(biāo)記1處,輸入內(nèi)容,到尾部在鍵盤(pán)上點(diǎn)擊Tab,出現(xiàn)新的一行。之后保存
D.Eclipse連接數(shù)據(jù)庫(kù)
01.png
1.新建一個(gè)Student類(lèi),代碼如下
package com.chenhai.dto;
//類(lèi)的三個(gè)屬性和數(shù)據(jù)庫(kù)中的一一對(duì)應(yīng)
public class Student {
private String name;
private int age;
private String sex;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}

01.png
2.建一個(gè)測(cè)試包,然后新建Test類(lèi),并在Test類(lèi)中寫(xiě)一個(gè)主函數(shù)。
3.下載mysql驅(qū)動(dòng)jar包

01.png
4.點(diǎn)擊上圖標(biāo)記4,配置mysql驅(qū)動(dòng)jar包。

01.png
5.點(diǎn)擊上圖標(biāo)記,安裝我們下載的jar包
01.png

01.png
6.有上圖的標(biāo)記,表示安裝成功
7.進(jìn)行JAVA端的代碼編寫(xiě)及效果測(cè)試
- 7.1 測(cè)試一:在JAVA端連接數(shù)據(jù)庫(kù)
- 7.1.1 Test類(lèi)的主函數(shù),代碼如下:
package com.chenhai.test;
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 com.chenhai.dto.Student;
public class Test {
public static void main(String[] args) throws Exception {
// 獲取數(shù)據(jù)庫(kù)鏈接
// 1.加載數(shù)據(jù)庫(kù)連接驅(qū)動(dòng)
Class.forName("com.mysql.jdbc.Driver");
// MySQL驅(qū)動(dòng)包為最新DMR版(mysql-connector-java-8.0.8-dmr.jar)時(shí),使用以下類(lèi)路徑
// Class.forName("com.mysql.cj.jdbc.Driver");
// 2.向數(shù)據(jù)庫(kù)連接驅(qū)動(dòng)提供數(shù)據(jù)庫(kù)地址(可帶參數(shù)),訪問(wèn)賬號(hào)和訪問(wèn)密碼來(lái)建立連接
// 定義URL,NAME和PASSWORD
String url = "jdbc:mysql://localhost:3358/jdbc_test?serverTimezone=UTC&useSSL=false";
String name = "IcyRoc";
String password = "xpc666";
// 建立連接
Connection conn = DriverManager.getConnection[圖片上傳中...(01.png-6996f2-1511588700028-0)]
(url, name, password);
// 3.conn.isClosed()方法判斷連接是否關(guān)閉;返回true:連接關(guān)閉;返回false:連接未關(guān)閉
if(conn.isClosed()){
// 返回true:連接關(guān)閉
System.out.println("連接失敗!");
}else{
// 返回false:連接未關(guān)閉
System.out.println("連接成功!");
}
}
}
-
7.1.2 以上代碼的圖片詳細(xì)釋義參照:
01.png -
7.1.3 運(yùn)行程序并結(jié)果查看
01.png 7.2 測(cè)試二:在JAVA端對(duì)前面建立的student表進(jìn)行全部查詢并輸出到Eclipse控制臺(tái)
7.2.1 為了方便查看,此處新建一個(gè)名為T(mén)est2的類(lèi),同樣需要主函數(shù),并寫(xiě)一個(gè)查詢方法,代碼如下:
主函數(shù)代碼:
public static void main(String[] args) throws Exception {
// 創(chuàng)建test2對(duì)象用來(lái)調(diào)用getAll()方法
Test2 test2 = new Test2();
// 使用foreach循環(huán)對(duì)查詢的結(jié)果進(jìn)行全部遍歷,并輸出到控制臺(tái)
for (Student studentToShow : test2.getAll()) {
System.out.println(
"姓名:" + studentToShow.getName() + "年齡:" + studentToShow.getAge() + "性別:" + studentToShow.getSex());
}
}
查詢方法代碼:
/**
* 用于查詢?nèi)繉W(xué)生信息
*
* @return List<Student> 學(xué)生類(lèi)的集合
* @throws SQLException
*/
private List<Student> getAll() throws Exception {
// 實(shí)例化一個(gè)學(xué)生類(lèi)的集合listS
List<Student> listS = new ArrayList<Student>();
// 建立數(shù)據(jù)庫(kù)的連接,同test1中操作,此處是為了簡(jiǎn)化測(cè)試涉及到的類(lèi)數(shù)量,才直接在查詢方法類(lèi)建立連接
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(
"jdbc:mysql://localhost:3358/jdbc_test?serverTimezone=UTC&useSSL=false", "IcyRoc", "xpc666");
// 使用的SQL語(yǔ)句
String sql = "select * from student";
// 聲明預(yù)編譯語(yǔ)句對(duì)象ps來(lái)對(duì)SQL語(yǔ)句進(jìn)行預(yù)編譯
PreparedStatement ps = conn.prepareStatement(sql);
// 聲明結(jié)果集對(duì)象rs用于儲(chǔ)存SQL語(yǔ)句執(zhí)行返回的結(jié)果集
ResultSet rs = ps.executeQuery();
// 遍歷結(jié)果集rs,并將學(xué)生信息一一添加至學(xué)生類(lèi)的集合listS中
while (rs.next()) {
Student s = new Student();
s.setName(rs.getString("Name"));
s.setAge(rs.getInt("Age"));
s.setSex(rs.getString("Sex"));
listS.add(s);
}
// 返回學(xué)生類(lèi)的集合listS
return listS;
}
- 7.2.2 以上代碼的圖片詳細(xì)釋義參照:
主函數(shù)釋義圖:
01.png
查詢方法釋義圖:
01.png -
7.2.3 運(yùn)行程序并結(jié)果查看
01.png





