A.安裝MySql
01.png
1.安裝MySql,一路next,execute等待安裝過程完成。
02.png
2.在上圖1,設置密碼為root,之后點擊標記2
02.png
3.將上圖標記的地方自己設置用戶名,密碼;沒有標記的地方,選擇跟上圖一樣的參數。
02.png
4.點擊上圖的next,之后一路點擊next或execute
02.png
5.點擊上圖的check,之后點擊next
02.png
6.上圖顯示MySQL安裝完畢。
01.png
7.桌面右下角出現標記的圖標,表示MySQL安裝成功。
01.png
8.右鍵點擊MySql圖標,之后點擊標記1,出現標記2;標記2分別表示啟動,停止,重啟數據庫。
B.安裝navicat,這是一款可視化的數據庫管理工具(支持增刪改查),支持的數據庫包含MySQL等
01.png
1.點擊上圖的連接,之后點擊標記里的MySQL
01.png
2.設置上圖標記的內容,之后點擊確定。
01.png
3.雙擊以上標記的按鈕,chengchao相當于本地的服務器
01.png
4.鼠標右鍵點擊chengchao,之后點擊標記新建數據庫
01.png
5.在上圖的標記中,輸入數據庫名,字符集選擇和上圖相同。
C.新建數據庫表
01.png
1.點擊標記1,之后點擊標記2;
01.png
2.點擊標記1,出現標記2;
01.png
3.點擊上圖標記中的保存,輸入表名Student
01.png
4.點擊標記Student,出現上圖右邊的內容
01.png
5.在上圖標記1處,輸入內容,到尾部在鍵盤上點擊Tab,出現新的一行。之后保存
D.Eclipse連接數據庫
01.png
1.新建一個Student類,代碼如下
package com.chenhai.dto;
//類的三個屬性和數據庫中的一一對應
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.建一個測試包,然后新建Test類,并在Test類中寫一個主函數。
3.下載mysql驅動jar包
01.png
4.點擊上圖標記4,配置mysql驅動jar包。
01.png
5.點擊上圖標記,安裝我們下載的jar包
01.png
01.png
6.有上圖的標記,表示安裝成功
7.進行JAVA端的代碼編寫及效果測試
- 7.1 測試一:在JAVA端連接數據庫
- 7.1.1 Test類的主函數,代碼如下:
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 {
// 獲取數據庫鏈接
// 1.加載數據庫連接驅動
Class.forName("com.mysql.jdbc.Driver");
// MySQL驅動包為最新DMR版(mysql-connector-java-8.0.8-dmr.jar)時,使用以下類路徑
// Class.forName("com.mysql.cj.jdbc.Driver");
// 2.向數據庫連接驅動提供數據庫地址(可帶參數),訪問賬號和訪問密碼來建立連接
// 定義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()方法判斷連接是否關閉;返回true:連接關閉;返回false:連接未關閉
if(conn.isClosed()){
// 返回true:連接關閉
System.out.println("連接失敗!");
}else{
// 返回false:連接未關閉
System.out.println("連接成功!");
}
}
}
-
7.1.2 以上代碼的圖片詳細釋義參照:
01.png -
7.1.3 運行程序并結果查看
01.png 7.2 測試二:在JAVA端對前面建立的student表進行全部查詢并輸出到Eclipse控制臺
7.2.1 為了方便查看,此處新建一個名為Test2的類,同樣需要主函數,并寫一個查詢方法,代碼如下:
主函數代碼:
public static void main(String[] args) throws Exception {
// 創建test2對象用來調用getAll()方法
Test2 test2 = new Test2();
// 使用foreach循環對查詢的結果進行全部遍歷,并輸出到控制臺
for (Student studentToShow : test2.getAll()) {
System.out.println(
"姓名:" + studentToShow.getName() + "年齡:" + studentToShow.getAge() + "性別:" + studentToShow.getSex());
}
}
查詢方法代碼:
/**
* 用于查詢全部學生信息
*
* @return List<Student> 學生類的集合
* @throws SQLException
*/
private List<Student> getAll() throws Exception {
// 實例化一個學生類的集合listS
List<Student> listS = new ArrayList<Student>();
// 建立數據庫的連接,同test1中操作,此處是為了簡化測試涉及到的類數量,才直接在查詢方法類建立連接
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(
"jdbc:mysql://localhost:3358/jdbc_test?serverTimezone=UTC&useSSL=false", "IcyRoc", "xpc666");
// 使用的SQL語句
String sql = "select * from student";
// 聲明預編譯語句對象ps來對SQL語句進行預編譯
PreparedStatement ps = conn.prepareStatement(sql);
// 聲明結果集對象rs用于儲存SQL語句執行返回的結果集
ResultSet rs = ps.executeQuery();
// 遍歷結果集rs,并將學生信息一一添加至學生類的集合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);
}
// 返回學生類的集合listS
return listS;
}
- 7.2.2 以上代碼的圖片詳細釋義參照:
主函數釋義圖:
01.png
查詢方法釋義圖:
01.png -
7.2.3 運行程序并結果查看
01.png