使用JDBC进行简单连接
生活随笔
收集整理的這篇文章主要介紹了
使用JDBC进行简单连接
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
學習筆記:JDBC與數據庫
集訓的有關總結
連接數據庫(MySQL)的步驟:
導入jar包(可以去官網下)
復制mysql-connector-java-5.1.37-bin.jar到項目libs目錄下
右鍵–>Add As Library
注冊驅動
獲取數據庫連接對象Connection
定義sql
獲取執行sql語句的對象Statement
執行sql,接收返回的結果
處理結果
釋放資源
下面以簡單的例子介紹:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.Statement;/**1. JDBC連接數據庫2. @author MIAO3. @date 2020/5/11*/ public class LoginJDBC {public static void main(String[] args) throws Exception {//1.注冊驅動Class.forName("com.mysql.jdbc.Driver");//2.獲取數據庫連接對象Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test1","root","root");System.out.println(conn);//3.定義sql語句String sql = "insert into score(sid,sname,sage) values(99,'李未來',18)";//4.獲取執行sql語句的對象StatementStatement statement = conn.createStatement();//5.執行sql語句,接收返回結果int i = statement.executeUpdate(sql);//6.處理結果System.out.println("受影響行數:"+i);//7.釋放資源statement.close();conn.close();} }關于對象的詳解:
- 注冊驅動:告訴程序應該使用哪一個數據庫驅動jar包
Class.forName("com.mysql.jdbc.Driver"); - 獲取數據庫連接
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test1","root","root"); - url="jdbc:mysql://localhost:3306/test1"指明數據庫的連接路徑
- 語法:(jdbc:mysql://ip地址(域名):端口號(這里MySQL默認的端口號是3306)/數據庫名稱(這里我創建的數據庫名稱為test1),“user用戶名”,“password數據庫密碼”);
獲取執行sql的對象
Statement statement = conn.createStatement();
- executeUpdate()方法:執行DML(insert,update,delete)和DDL(create,alter,drop)語句
- 返回值:影響的行數,可以通過這個行數判斷所寫的sql語句是否執行,返回值>0執行成功,返回值<0執行失敗
- boolean next(): 游標向下移動一行,判斷當前行是否是最后一行末尾(是否有數據),如果是,則返回 false,如果不是則返回 true
- 使用步驟:
游標向下移動一行
判斷是否有數據
獲取數據
- SQL 注入問題:在拼接 sql 時,有一些 sql 的特殊關鍵字參與字符串的>拼接。會造成安全性問題
- 輸入用戶隨便,輸入密碼: a’ or ‘a’ = 'a
- sql:select * from user where username = ‘fhdsjkf’ and password = ‘a’ or ‘a’ = ‘a’
- 解決 sql 注入問題:使用 PreparedStatement 對象來解決
- 預編譯的 SQL:參數使用 ? 作為占位符
- 注意:sql 的參數使用?作為占位符。
如: select * from user where username = ? and password = ?;
總結
以上是生活随笔為你收集整理的使用JDBC进行简单连接的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: volatile关键字解析
- 下一篇: Leetcode--11. 盛水最多的容