1. 程式人生 > >JDBC簡單查詢 菜鳥入門

JDBC簡單查詢 菜鳥入門

以前學習JDBC的時候很多不懂的地方,後來慢慢用多了 也就會了,但是後來一直使用各種框架,對JDBC有一點遺忘 今天我們就來看看JDBC技術 到底如何使用 所謂的JDBC就是 連線資料庫的一套API 也就是一套方法罷了,下面他們提供幾個常用的介面和類

DriverManger 驅動程式管理類 用於 裝載驅動程式 併為建立資料庫連線提供支援
Connection 介面 用於連線某一資料庫
Statement 用於執行Sql語句 他下面有兩個常用子介面
preparStatement是Statement下的子介面 用於執行預編譯的Sql語句防止sql注入 經常使用
ResultSet 該介面用於對我們查詢到的結果集合進行處理

首先我們建立一張表 我使用的是資料庫操作軟體是Navice 建立一張t_user表
這裡寫圖片描述

裡面有 ID主鍵 一個name 一個age列

我再這裡使用的是mySql資料庫 所以我要匯入Mysql的驅動包 複製到lib目錄下並構建到配置路徑中

這裡寫圖片描述

下面是我們使用JDBC的步驟在網上找的圖片

這裡寫圖片描述

package com.hljex.Dao;
import java.sql.DriverManager;
import java.sql.SQLException;
import com.mysql.jdbc.Connection;

public class JdbcTool {
     private
static Connection con = null; public static Connection GetConnection(){ //建立一個JdbcTool 工具類 用於專門得到資料庫連結 try { //載入mysql驅動 Class.forName("com.mysql.jdbc.Driver"); //獲取資料庫連結物件 con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root",""
); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return con; } } 接下來我們使用Statement 做一個查詢 當然我們一般都是使用preparStatement 因為這個可以防止sql注入是預先編譯SQL 語句的

下面是我們做了一個簡單的查詢

package com.hljex.Dao;

import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;

public class JdbcDao {
        public static void  TestDao() throws ClassNotFoundException, SQLException{
        //我們建立三個變數
        Connection con = null; //用於連線資料庫
        Statement str = null;//用於向資料庫傳送sql語句
        ResultSet  resu = null;//用於處理我們查詢到的結果集
        Class.forName("com.mysql.jdbc.Driver");
        //獲取連線物件 傳入要連線的資料庫地址 並傳入使用者名稱稱和密碼
        con = (Connection)JdbcUtil.GetConnection();
        //建立sql語句
        String sql = "select * from t_user";
        //獲取傳送sql語句Statement物件
        str = (Statement) con.createStatement();
        //執行sql
        resu = str.executeQuery(sql);
            //打印出我們查詢到的資料
            while (resu.next()) {
                System.out.println(resu.getInt("pk_id"));
                System.out.println(resu.getString("f_name"));
            }

        }

        //建立main方法 呼叫TestDao() 丟擲異常資訊
        public static void main(String[] args) throws ClassNotFoundException, SQLException {
            TestDao();

        }

}

查詢結果:
這裡寫圖片描述

當然我們也要使用經常用到的preparStatement 預編譯的物件嘛

package com.hljex.Dao;

import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;

public class JdbcDao {
        public static void  TestDao() throws ClassNotFoundException, SQLException{
        //我們建立三個變數
        Connection con = null; //用於連線資料庫
        PreparedStatement str = null;//用於向資料庫傳送sql語句
        ResultSet  resu = null;//用於處理我們查詢到的結果集
        Class.forName("com.mysql.jdbc.Driver");
        //獲取連線物件 傳入要連線的資料庫地址 並傳入使用者名稱稱和密碼
        con = (Connection)JdbcUtil.GetConnection();
        //建立sql語句
        String sql = "select * from t_user";
        //獲取傳送sql語句PreparedStatement物件    最大的區別就是 這裡我們獲取sql執行物件的時候是要把Sql語句傳入過去的
        str = (PreparedStatement) con.prepareStatement(sql);
        //執行sql
        resu = str.executeQuery();
            while (resu.next()) {
                System.out.println(resu.getInt("pk_id"));
                System.out.println(resu.getString("f_name"));
            }

        }

        //建立main方法 呼叫TestDao() 丟擲異常資訊
        public static void main(String[] args) throws ClassNotFoundException, SQLException {
            TestDao();

        }

}

當然我們也是查詢出來的
這裡寫圖片描述

相關推薦

JDBC簡單查詢 入門

以前學習JDBC的時候很多不懂的地方,後來慢慢用多了 也就會了,但是後來一直使用各種框架,對JDBC有一點遺忘 今天我們就來看看JDBC技術 到底如何使用 所謂的JDBC就是 連線資料庫的一套API 也就是一套方法罷了,下面他們提供幾個常用的介面和類 Dri

入門jdbc與sqlserve2008

本人最近入門資料庫 在此整理下 1.jdbc與sqlserve連線 static final String JDBC_DRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; 首先要找到驅動,前提是你java裡得有這個包,可以測

SAS編程基礎 - 入門常用操作

強制 http ctrl+s 技術分享 shift 菜鳥 ctr 編輯 菜鳥入門 1. SAS9.4添加和取消註釋的快捷鍵? Ctrl+/:添加註釋 Ctrl+Shift+/:取消註釋 2. 如何強制終止程序運行?

《jmeter:入門到進階系列》

ext spa 解決 jmeter 目錄 簡單 blank 則表達式 jmeter使用 jmeter是我從事軟件測試工作以來接觸的第一個測試工具,也是耗費時間精力最多的一個工具,當然,學習jmeter過程中,由於知識儲備不夠,也順帶學習了很多其他相關的一些知識。 一直有個想

《HTTP協議:入門系列》

數據 www spa tar 自動化 方向 blog sco 就會 很多測試人員在有了一定的測試經驗(一般是1-2年)後,就會陷入瓶頸階段,想提升,但不知道如何提升,學習又沒有比較明確的方向,曾經我也是。。。 那麽,我建議系統的學習一下HTTP協議,好處很多:對接口測試、性

入門【ASP.NET Core】3:準備CentOS和Nginx環境

sysconf service www post 輸入密碼 mct cnblogs kdt 提示 基本軟件 VMware虛擬機 centos:http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_

入門【ASP.NET Core】5:命令行配置、Json文件配置、Bind讀取配置到C#實例、在Core Mvc中使用Options

加載 中間 view tar public png 配置到 index 不同 命令行配置 我們通過vs2017創建一個控制臺項目CommandLineSample 可以看到現在項目以來的是dotnet core framework 我們需要吧a

DotNet入門之無限極分類(一)設計篇

對數 tar null 擴展 creat nvarchar 鏈表 文章 數據庫設計 寫這個教程的原因,是因為,無限極分類,在許多項目中,都用得到。而對於新手來說,不是很好理解,同時,操作上也有一些誤區或者不當之處。所以我就鬥膽,拋磚引玉一下,已一個常見的後臺左側頻道樹為例子

jdbc簡單查詢

jdbc : 注意: URL=jdbc:mysql://127.0.0.1:3306/test?characterEncoding=utf8 , 需要新增?characterEncoding=utf8 ,暫不清楚原因 對查詢所有沒有問題,但安username查詢,則查詢不到資料

golang build 的簡單用法.(初學)

1. golang 裡面的 go build 可以編譯程式碼. go build helloworld.go 2. 這裡面有一個注意事項事項. 如果引用非go語言的 內建package的話 需要在環境變數 GOPATH 目錄下(任意一個) 的src 目錄下有報名 對應的資料夾 和相應的

Java多執行緒入門&執行緒安全

什麼是程序 電腦中時會有很多單獨執行的程式,每個程式有一個獨立的程序,而程序之間是相互獨立存在的。比如下圖中的QQ、酷狗播放器、電腦管家等等。 什麼是執行緒 程序想要執行任務就需要依賴執行緒。換句話說,就是程序中的最小執行單位就是執行緒,並且一個程序中至少有一個

校招知識點總結篇之產品經理(入門

一、簡短清晰的自我介紹 二、APP功能的對比分析 1.分析一款你最喜歡的app,它的產品定位、目標使用者、競爭優勢,有哪些可以改進的地方?(最常用的app功能與同類APP的優劣勢比較分析及改進點,如淘寶、京東) 淘寶功能的改進:淘寶功能的瘦身和優化;地址暴漏問題(地址的

軟體測試入門

目錄 前言       隨著技術的發展,各種應用程式、各種App應運而生!在早期,這些應用程式只是通過開發人員、產品以及部分使用者使用之後,給出相應的修改意見,感覺都OK後就進行上線,在網上或一些app下載平臺上就可以直接使用,沒有進行過規範的軟體測試!這些

MongoDB 入門“祕籍”

1、MongoDB介紹  1.1 什麼是MongoDB ?  MongoDB 是由C++語言編寫的,是一個基於分散式檔案儲存的開源資料庫系統。  在高負載的情況下,新增更多的節點,可以保證伺服器效能。  MongoDB 旨在為WEB應用提供可擴充套件的

java程式設計師入門之一javaweb專案開發環境

一、java開發環境 1、jdk的下載安裝 JDK:JDK是java語言的軟體開發包,是整個java開發的核心,包含了java的執行環境(jvm+java系統類庫)和java工具,執行java程式的最小環境為jre,開發java程式的最小環境為JDK。 JDK的下載:ora

【區塊鏈之入門】區塊鏈——顛覆式創新技術

區塊鏈技術可以說在近期獲得了大量的關注,小川行長公開表示央行要研究區塊鏈技術;2015年區塊鏈成為了美國創投中獲得融資最高的板塊;26 歲少年Vitalik建立的開源區塊鏈平臺以太坊,2015 年 7 月上線後市值飆升至 10億美元,成為新晉獨角獸。區塊鏈在金融、共享經濟、物聯網等方面存在很高的應用價值,

入門】stm32 之 ADC 模數轉換

今天對ADC進行了研究,個人感覺,ADC的配置相對也對比較複雜一點,因為需要配置的暫存器是比較多的! 在datasheet 關於ADC的簡介中,明確說明ADC的輸入時鐘不得超過14M,他是有PCLK2經過分頻得來的 這次我們選用ADC1_IN0作為講解的物件,ADC1_IN

橢圓曲線加密學習的入門

橢圓曲線:一個更好的trapdoor構件 橢圓曲線是滿足特定數學等式的點的集合。橢圓曲線的方程像如下的樣子:   它的影象:   還有其他形式的橢圓曲線的表達形式,但是一般的橢圓曲線方程,一個變數為2階,一個變數為3階。它有一些好的屬性用於加密。 1.奇怪的對稱性 它是水平

Ansible 入門 & module詳解

ansible 安裝 yum install -y ansible 配置 兩種方法: 祕鑰 直接在 /etc/ansible/hosts 填入對應伺服器賬號密碼 [myself] 192.168.94.134 ansible_ssh_user="root" an

JAVA入門(9) Java列印一維陣列,二維陣列

一 列印list中的元素 0 JAVA風格的最簡做法import java.util.List; ... List<Integer> l = new ArrayList(3); System.out.println(l); 1 JAVA風格的做法import j