明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

MySQL學(xué)習(xí)之Java連接MySQL數(shù)據(jù)庫(kù)的圖文代碼案例

[摘要]1、什么是JDBC? JDBC(Java DataBase Connectivity)就是Java數(shù)據(jù)庫(kù)連接,說白了就是用Java語言來操作數(shù)據(jù)庫(kù)。原來我們操作數(shù)據(jù)庫(kù)是在控制臺(tái)使用SQL語句來操作...
1、什么是JDBC?

JDBC(Java DataBase Connectivity)就是Java數(shù)據(jù)庫(kù)連接,說白了就是用Java語言來操作數(shù)據(jù)庫(kù)。原來我們操作數(shù)據(jù)庫(kù)是在控制臺(tái)使用SQL語句來操作數(shù)據(jù)庫(kù),JDBC是用Java語言向數(shù)據(jù)庫(kù)發(fā)送SQL語句。

2、JDBC原理

SUN提供訪問數(shù)據(jù)庫(kù)規(guī)范稱為JDBC,而生產(chǎn)廠商提供的實(shí)現(xiàn)類稱為驅(qū)動(dòng)。

MySQL學(xué)習(xí)之Java連接MySQL數(shù)據(jù)庫(kù)的圖文代碼實(shí)例

JDBC是接口,而JDBC驅(qū)動(dòng)才是接口的實(shí)現(xiàn),沒有驅(qū)動(dòng)無法完成數(shù)據(jù)庫(kù)連接!

每個(gè)數(shù)據(jù)庫(kù)廠商都有自己的驅(qū)動(dòng),用來連接自己公司的數(shù)據(jù)庫(kù)。

3、JDBC開發(fā)步驟

1)注冊(cè)驅(qū)動(dòng)

2)獲得連接

3)獲得語句執(zhí)行者

4)執(zhí)行sql語句

5)處理結(jié)果

6)釋放資源

3、導(dǎo)入驅(qū)動(dòng)jar包

1)新建項(xiàng)目,命名為WEB08_JDBC,

2)創(chuàng)建lib目錄,右擊New->Folder,命名為lib,用于存放當(dāng)前項(xiàng)目需要的所有jar包,

把jar包MySQL學(xué)習(xí)之Java連接MySQL數(shù)據(jù)庫(kù)的圖文代碼實(shí)例復(fù)制到當(dāng)前項(xiàng)目的lib文件夾下,

3)選擇jar包右擊執(zhí)行Build Path,直至當(dāng)前目錄下出現(xiàn)一個(gè)小奶瓶標(biāo)志

MySQL學(xué)習(xí)之Java連接MySQL數(shù)據(jù)庫(kù)的圖文代碼實(shí)例

4、測(cè)試sql注入問題(運(yùn)用到JUnit單元測(cè)試的內(nèi)容)

mysql下web08數(shù)據(jù)庫(kù)中tbl_user表中有兩條數(shù)據(jù),根據(jù)用戶信息登錄。

MySQL學(xué)習(xí)之Java連接MySQL數(shù)據(jù)庫(kù)的圖文代碼實(shí)例

具體代碼實(shí)現(xiàn)如下:

package cn.itheima.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 org.junit.Test;

public class TestLogin {
        @Test
        public void testLogin(){
            try {
                login1("zhangsan","999");
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        public void login1(String username,String password) throws ClassNotFoundException, SQLException{
            /*
             * 用戶登錄方法
             */
            //1.注冊(cè)驅(qū)動(dòng)
            Class.forName("com.mysql.jdbc.Driver");
            //2.獲取連接
            Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/web08","root","12345");
            //3.編寫sql語句
            String sql="select * from tbl_user where uname=? and upassword=?";
            //4.創(chuàng)建預(yù)處理對(duì)象
            PreparedStatement pstmt=conn.prepareStatement(sql);
            //5.設(shè)置參數(shù)(給占位符)
            pstmt.setString(1, username);
            pstmt.setString(2, password);
            //6.執(zhí)行查詢操作
            ResultSet rs=pstmt.executeQuery();
            //7.對(duì)結(jié)果集進(jìn)行處理
            if(rs.next()){
                System.out.println("恭喜您,"+username+"登錄成功!");
            }else{
                System.out.println("賬號(hào)或密碼錯(cuò)誤!");
            }
            if(rs!=null) rs.close();
            if(pstmt!=null) pstmt.close();
            if(conn!=null) conn.close();            
        }
    }

右擊Run As->JUnit Test,執(zhí)行結(jié)果為:恭喜您,zhangsan登錄成功!

以上就是MySQL學(xué)習(xí)之Java連接MySQL數(shù)據(jù)庫(kù)的圖文代碼實(shí)例的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!


學(xué)習(xí)教程快速掌握從入門到精通的SQL知識(shí)。