本文目錄一覽:
- 1、大數據分析師面試必備:java與mysql解析
- 2、如何用java創建mysql資料庫
- 3、如何使用Java與Mysql進行數據交互
- 4、java如何連接mySQL資料庫?
- 5、怎樣用java連接mysql
大數據分析師面試必備:java與mysql解析
【導讀】作為大數據工程師,其必須要掌握的基礎知識就是java與mysql的關係、交互和連接,作為基礎,也是面試考官經常會考的內容,為了幫助大家都能順利通過考試,今天小編就來和大家嘮一嘮java與mysql的關係、交互和連接,好了,開始今天的內容大數據分析師面試必備:java與mysql解析。
1. SQL語言四大類:
DQL 數據查詢語言 select
DML 數據操作語言 insert、update、delete
DDL 數據界說語言 create、alter
DCL 數據控制語言 grant許可權
2. mysql資料庫中的decimal類型(是數值型,不能存放字元串):
舉例:decimal(18,0) 常用於身份證號碼,但是帶x的不可以。
舉例:decimal(5,2)
狀況一:假設小數點前面是3位,後邊是2位,正常狀況。
狀況二:5指的是小數點前後不能超過5位,小數點後有必要是2位。
3. mysql中InnoDB和MyISAM引擎的差異:
innodb支撐:事務和主外鍵
myisam不支撐:事務和主外鍵
4. 【不需要背誦,選擇題考點】向mysql中,a向表中添加數據的幾種寫法,題目:id int 主鍵自增,name varchar(11)
不為空。
5. 操作mysql資料庫表有兩種方式,第一種:點八點吧;第二種:寫代碼。【不需要背誦,只需要了解,考試選擇題會出】
6. 在Java中,簡述面向對象三大特徵。
7. 在Java中,常用關鍵字:
1. 定義類的關鍵字是什麼? class
2. 繼承的關鍵字是什麼? extends
3. 定義介面的關鍵字是什麼? interface
4. 實現介面的關鍵字是什麼? implements
5. 抽象類的關鍵字是什麼? abstract
8. 在Java中,抽象類和介面的區別:
1. 抽象類中可以包含普通方法和抽象方法,介面中只能包含抽象方法
2. 抽象類中可以有構造方法,介面中沒有構造方法
3. 抽象類只能單繼承,可以實現多個介面
9. Java介面中有哪些成員?
1. 構造方法,沒有
2. 常量,默認訪問修飾符public static final,沒有變數
3. 抽象方法,默認訪問修飾符public abstract
10. 在Java中,抽象類和抽象方法的關係:
1. 抽象類中可以包含普通方法和抽象方法,抽象方法一定存在抽象類中。
2. 子類繼承抽象父類,必須實現|重寫抽象方法,除非子類也是抽象類。
3. 【判斷題】抽象類中必須包含抽象方法?【錯誤×】
4. 【判斷題】抽象方法一定存在抽象類中?【正確√】
11. Java重載的特點:
1. 在同一個類中
2. 方法名相同
3. 參數列表(個數、類型、順序)不同
4. 與返回值類型和訪問修飾符無關
12. Java重寫的特點:
1. 在父子類中
2. 方法名相同
3. 參數列表相同
4. 返回值類型相同,或是其子類
5. 訪問修飾符相同,或不能嚴於父類
13. 列舉幾種Java實現多態的形式:
1. 繼承的存在
2. 父類引用指向子類對象 | 向上轉型
3. 父類作為方法的返回值類型,父類作為方法的參數
14. Java介面的特性:單根性和傳遞性
15. 在Java中,throws和throw的區別:
1. throws 聲明異常,用在定義方法小括弧的後面
2. throw 拋出異常,寫在方法體內
以上就是小編今天給大家整理髮送的關於大數據分析師面試必備:java與mysql解析的相關內容,希望對各位考生有所幫助,想知道更多關於數據分析師的基本要求有哪些,關注小編持續更新數據分析師崗位解析。
如何用java創建mysql資料庫
JDBC連接資料庫
•創建一個以JDBC連接資料庫的程序,包含7個步驟:
1、載入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類中。
2、提供JDBC連接的URL
•連接URL定義了連接資料庫時的協議、子協議、數據源標識。
•書寫形式:協議:子協議:數據源標識
協議:在JDBC中總是以jdbc開始
子協議:是橋連接的驅動程序或是資料庫管理系統名稱。
數據源標識:標記找到資料庫來源的地址與連接埠。
例如:(MySql的連接URL)
jdbc:mysql:
//localhost:3306/test?useUnicode=truecharacterEncoding=gbk ;
useUnicode=true:表示使用Unicode字符集。如果characterEncoding設置為
gb2312或GBK,本參數必須設置為true 。characterEncoding=gbk:字元編碼方式。
3、創建資料庫的連接
•要連接資料庫,需要向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() ;
}
4、創建一個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(? , ?)}”) ;
如何使用Java與Mysql進行數據交互
使用jdbc驅動 六個步驟
創建鏈接
載入驅動
獲取示例
執行sql語句
獲取結果集
關閉連接
代碼示例
import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class DbDemo {
public static void main(String[] args) { // TODO Auto-generated method stub
ResultSet result = null;
Connection con = null;
Statement statement = null; try { // 第0步:將mysql 的jdbcjar包加入到引用庫中來
// 第一步:將想要連接的資料庫驅動類載入到JVM中來,載入過程中並向DriverManager註冊Driver
// 成功載入後,會將Mysql的驅動Driver類的實例註冊到DriverManager類中。
//使得下面我們獲取Connection只需要通過DriverManager就可以了。我不需要通過每個資料庫具體的Driver。
Class.forName(“com.mysql.jdbc.Driver”).newInstance(); // 第二步,通過DriverManager獲取一個和mysql的連接實例con
String JDBCUrl = “jdbc:mysql://localhost:3306/test?useUnicode=truecharacterEncoding=utf-8”;//
String userName = “root”;
String password = “1557862201”; // 接受一個jdbcurl,username,password;
con = DriverManager.getConnection(JDBCUrl, userName, password); // 第三步:通過con連接獲取到Statement實例,執行sql語句
statement = con.createStatement();// statement實例是用於一些不帶參數的sql執行,查詢,更新,插入,刪除操作都可以但是需要構建一個沒有佔位符的sql字元串
// 第四步,statement執行sql語句,查詢到的結果集到ResultSet實例,簡單查詢,沒有where語句的查詢
result = statement.executeQuery(“select * from student”); // 第五步:從結果集中獲取數據
while (result.next()) { // 根據test庫中student表格列名讀取數據
int id = result.getInt(“id”);
String name = result.getString(“_stuName”);
String number = result.getString(“_stuNumber”);
String Grade = result.getString(result.findColumn(“_stuGrade”));
String Address = result.getString(result.findColumn(“_stuAddress”));
System.out
.println(“name= ” + name + ” number= ” + number + ” Grade= ” + Grade + ” Address= ” + Address);
} // 插入語句
// statement.executeUpdate(“”);
insert(statement); // 執行帶參數的查詢,有where語句的查詢
int id = 2;
executeQuery(con, id); // 執行更新操作
updateDate(con, 2);
delete(con, “XX”);// 刪除數據行
} catch (ClassNotFoundException e) { // TODO Auto-generated catch block
System.out.println(“找不到驅動程序類 ,載入驅動失敗!”);
e.printStackTrace();
} catch (InstantiationException e) { // TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) { // TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException ex) { // TODO Auto-generated catch block
System.out.println(“SQLException: ” + ex.getMessage());
System.out.println(“SQLState: ” + ex.getSQLState());
System.out.println(“VendorError: ” + ex.getErrorCode());
ex.printStackTrace();
} finally { // 第六步:釋放資源
/**
* 關閉JDBC對象 操作完成以後要把所有使用的JDBC對象全都關閉,以釋放JDBC資源,關閉順序和聲 明順序相反: 1、關閉記錄集
* 2、關閉聲明 3、關閉連接對象
*/
if (result != null) {// 關閉結果集
try {
result.close();
} catch (SQLException e) { // TODO Auto-generated catch block
e.printStackTrace();
}
result = null;
} if (statement != null) {// 關閉執行sql語句代碼塊
try {
statement.close();
} catch (SQLException e) { // TODO Auto-generated catch block
e.printStackTrace();
}
statement = null;
} if (con != null) {// 關閉連接
try {
con.close();
} catch (SQLException e) { // TODO Auto-generated catch block
e.printStackTrace();
}
con = null;
}
}
}
java如何連接mySQL資料庫?
1.下面代碼是使用jdbc直接來鏈接mysql的操作,方式與SQL SERVER類似,區別在於載入的驅動不同,url的設置也有點區別。
2.執行腳本返回的結果,可以看出java成功鏈接上mysql並獲取到返回值
3.mysql-connector-java-5.1.26-bin.jar是java鏈接mysql使用的jar包,與SQL SERVER鏈接也有專門的jar包,jar包中包含了java鏈接mysql所用到的函數驅動等等,所有的jar包都是放到web工程lib目錄下
4.如果工程是整合在ssh下,一般情況下都會有一個properties文件,該文件配置了資料庫鏈接常用的命令,下圖是mysql中的配置
5.使用spring框架下進行的測試,結果可以成功執行,無論是sql server還是mysql還是其他的資料庫,基本功能都一樣,只是語法結構有所區別,java在調用的過程中大部分功能只要切換了資料庫鏈接命令就可以公用,如果系統架構設計的足夠好,切換資料庫的時候,應用程序是不用調整就能兼容的
怎樣用java連接mysql
Java MySQL 連接
Java 連接 MySQL 需要驅動包,百度就有自行下載,解壓後得到jar庫文件,然後在對應的項目中導入該庫文件。
本實例使用的是 Eclipse,導入 jar 包:
創建測試數據
接下來我們在 MySQL 中創建 RUNOOB 資料庫,並創建 websites 數據表,表結構如下:
CREATE TABLE `websites` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` char(20) NOT NULL DEFAULT ” COMMENT ‘站點名稱’,
`url` varchar(255) NOT NULL DEFAULT ”,
`alexa` int(11) NOT NULL DEFAULT ‘0’ COMMENT ‘Alexa 排名’,
`country` char(10) NOT NULL DEFAULT ” COMMENT ‘國家’,
PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
數據表顯示如下:
連接資料庫
以下實例使用了 JDBC 連接 MySQL 資料庫,注意一些數據如用戶名,密碼需要根據你的開發環境來配置:
MySQLDemo.java 文件代碼:
package com.runoob.test;
import java.sql.*;
public class MySQLDemo {
// JDBC 驅動名及資料庫 URL
static final String JDBC_DRIVER = “com.mysql.jdbc.Driver”;
static final String DB_URL = “jdbc:mysql://localhost:3306/RUNOOB”;
// 資料庫的用戶名與密碼,需要根據自己的設置
static final String USER = “root”;
static final String PASS = “123456”;
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try{
// 註冊 JDBC 驅動
Class.forName(“com.mysql.jdbc.Driver”);
// 打開鏈接
System.out.println(“連接資料庫…”);
conn = DriverManager.getConnection(DB_URL,USER,PASS);
// 執行查詢
System.out.println(” 實例化Statement對…”);
stmt = conn.createStatement();
String sql;
sql = “SELECT id, name, url FROM websites”;
ResultSet rs = stmt.executeQuery(sql);
// 展開結果集資料庫
while(rs.next()){
// 通過欄位檢索
int id = rs.getInt(“id”);
String name = rs.getString(“name”);
String url = rs.getString(“url”);
// 輸出數據
System.out.print(“ID: ” + id);
System.out.print(“, 站點名稱: ” + name);
System.out.print(“, 站點 URL: ” + url);
System.out.print(“\n”);
}
// 完成後關閉
rs.close();
stmt.close();
conn.close();
}catch(SQLException se){
// 處理 JDBC 錯誤
se.printStackTrace();
}catch(Exception e){
// 處理 Class.forName 錯誤
e.printStackTrace();
}finally{
// 關閉資源
try{
if(stmt!=null) stmt.close();
}catch(SQLException se2){
}// 什麼都不做
try{
if(conn!=null) conn.close();
}catch(SQLException se){
se.printStackTrace();
}
}
System.out.println(“Goodbye!”);
}
}
以上實例執行輸出結果如下:
我有一個微信公眾號,經常會分享一些Java技術相關的乾貨,還有一些學習資源。
如果你喜歡我的分享,可以用微信搜索「Java團長」或者「javatuanzhang」關注。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/293087.html