真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何用JDBC實(shí)現(xiàn)驗(yàn)證登錄

這篇文章主要介紹“如何用JDBC實(shí)現(xiàn)驗(yàn)證登錄”,在日常操作中,相信很多人在如何用JDBC實(shí)現(xiàn)驗(yàn)證登錄問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”如何用JDBC實(shí)現(xiàn)驗(yàn)證登錄”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!

成都創(chuàng)新互聯(lián)自2013年起,先為鶴山等服務(wù)建站,鶴山等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為鶴山企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。

JDBC(Java DataBase Connectivity,java數(shù)據(jù)庫(kù)連接)是一種用于執(zhí)行SQL語(yǔ)句的Java API,可以為多種關(guān)系數(shù)據(jù)庫(kù)提供統(tǒng)一訪問(wèn),它由一組用Java語(yǔ)言編寫的類和接口組成。JDBC提供了一種基準(zhǔn),據(jù)此可以構(gòu)建更高級(jí)的工具和接口,使數(shù)據(jù)庫(kù)開發(fā)人員能夠編寫數(shù)據(jù)庫(kù)應(yīng)用程序

- Java 具有堅(jiān)固、安全、易于使用、易于理解和可從網(wǎng)絡(luò)上自動(dòng)下載等特性,是編寫數(shù)據(jù)庫(kù)應(yīng)用程序的杰出語(yǔ)言。所需要的只是 Java應(yīng)用程序與各種不同數(shù)據(jù)庫(kù)之間進(jìn)行對(duì)話的方法。

- JDBC可以在各種平臺(tái)上使用Java,如Windows,Mac OS和各種版本的UNIX。

- JDBC庫(kù)包括通常與數(shù)據(jù)庫(kù)使用相關(guān)的下面提到的每個(gè)任務(wù)的API。

lJDBC實(shí)現(xiàn)驗(yàn)證登錄代碼思路

* 鍵盤輸入用戶名和密碼,對(duì)比數(shù)據(jù)庫(kù)中的用戶信息,判斷是否登錄成功

*     1、連接數(shù)據(jù)庫(kù)

*         MyJDBCUtils.getConnection()

*     2、獲取請(qǐng)求對(duì)象stmt

*         conn.createStmtement()

*     3、創(chuàng)建鍵盤對(duì)象,獲取用戶名和密碼

*         3.1    創(chuàng)建鍵盤錄入對(duì)象

*         3.2    提示用戶輸入

*         3.3    獲取用戶輸入內(nèi)容

*     4、編寫SQL語(yǔ)句,把用戶名和密碼放入SQL語(yǔ)句中

*     5、執(zhí)行查詢,獲取查詢結(jié)果

*         stmt.executeQuery(sql);

*     6、根據(jù)查詢結(jié)果判斷登錄是否成功

*     7、關(guān)閉連接

lJava工具類

在java開發(fā)過(guò)程中,代碼中時(shí)常用到一些Scanner、Random一樣的類,他們是鍵盤錄入,生成隨機(jī)數(shù)的類,像一個(gè)工具一樣,在java中被稱為工具類。

        我們?cè)诰帉懽约旱拇a時(shí),有的代碼功能和java工具類似,比如連接數(shù)據(jù)庫(kù)、驗(yàn)證登錄,時(shí)長(zhǎng)會(huì)用得到,每次都書寫一次太麻煩,我們可以嘗試編寫自己的工具類,每次用到的時(shí)候直接導(dǎo)包調(diào)用就行,能提高我們的開發(fā)效率。

l封裝JDBC工具類

n加入獲取數(shù)據(jù)庫(kù)連接對(duì)象的方法

n加入釋放連接的方法

代碼如下:

工具類代碼:

package com.qianfeng.util;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

/**

* JDBC工具類

* 有獲取連接的方法

* @author dushine

*/

public class JDBCUtil {

        /**

        * 獲取數(shù)據(jù)庫(kù)連接的方法

        * @return Connection conn

        * @throws SQLException

        */

        public static Connection getConnection() throws SQLException {

                String url = "jdbc:MySQL://localhost:3306/class?useSSL=false";

                String user = "root";

                String password = "root";

                Connection conn = DriverManager.getConnection(url,user,password);

                return conn;

        }

        /**

        * 釋放連接的方法

        * @param conn

        * @throws SQLException

        */

        public static void releaseSourse(Connection conn) throws SQLException {

                if (conn != null) {

                        conn.close();

                }

        }

        /**

        * 釋放連接的方法

        * @param conn                數(shù)據(jù)庫(kù)連接對(duì)象

        * @param stmt                執(zhí)行SQL語(yǔ)句的對(duì)象

        * @throws SQLException

        */

        public static void releaseSourse(Connection conn,Statement stmt) throws SQLException {

                if (stmt != null) {

                        stmt.close();

                }

                if (conn != null) {

                        conn.close();

                }

        }

        /**

        * 釋放連接的方法

        * @param conn                數(shù)據(jù)庫(kù)連接對(duì)象

        * @param stmt                執(zhí)行SQL語(yǔ)句的對(duì)象

        * @param resultSet        執(zhí)行SQL語(yǔ)句的返回的結(jié)果集

        * @throws SQLException

        */

        public static void releaseSourse(Connection conn,Statement stmt,ResultSet resultSet) throws SQLException {

                if (resultSet != null) {

                        resultSet.close();

                }

                if (stmt != null) {

                        stmt.close();

                }

                if (conn != null) {

                        conn.close();

                }

        }

}

測(cè)試類代碼:

package com.qianfeng.demos;

import java.sql.Connection;

import java.sql.ResultSet;

import java.sql.Statement;

import java.util.Scanner;

import com.qianfeng.util.JDBCUtil;

public class Demo04 {

        public static void main(String[] args) throws Exception {

                /**

                * 登錄注冊(cè)

                *         獲取用戶輸入內(nèi)容

                *         把輸入的內(nèi)容當(dāng)做條件查詢數(shù)據(jù)庫(kù)中的內(nèi)容

                */

                Scanner sc = new Scanner(System.in);

                System.out.println("請(qǐng)輸入用戶名:");

                String name = sc.nextLine();

                System.out.println("請(qǐng)輸入密碼:");

                String pwd = sc.nextLine();

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

                Class.forName("com.mysql.jdbc.Driver");

                /*

                String url = "jdbc:mysql://localhost:3306/class?useSSL=false";

                String user = "root";

                String password = "root";

                // 獲取和數(shù)據(jù)庫(kù)的連接

                Connection conn = DriverManager.getConnection(url, user, password);*/

                Connection conn = JDBCUtil.getConnection();

                // 使用連接對(duì)象獲取執(zhí)行sql的對(duì)象

                Statement stmt = conn.createStatement();

                // 編寫SQL語(yǔ)句

                String sql = "select * from userinfo where username='"+name+"' and password='"+pwd+"'";

                System.out.println(sql);

                // 執(zhí)行SQL語(yǔ)句,獲取返回結(jié)果

                ResultSet resultSet = stmt.executeQuery(sql);

                if (resultSet.next()) {

                        System.out.println("登陸成功!");

                } else {

                        System.out.println("用戶名或密碼錯(cuò)誤!");

                }

                JDBCUtil.releaseSourse(conn, stmt, resultSet);

                sc.close();

        }

}

到此,關(guān)于“如何用JDBC實(shí)現(xiàn)驗(yàn)證登錄”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!


當(dāng)前標(biāo)題:如何用JDBC實(shí)現(xiàn)驗(yàn)證登錄
路徑分享:http://weahome.cn/article/pdpheo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部