最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java訪問數(shù)據(jù)庫實例詳解

 更新時間:2022年03月01日 11:39:33   作者:小朱同學的筆記本  
這篇文章主要為大家詳細介紹了Java訪問數(shù)據(jù)庫實例,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

JAVA程序想要訪問數(shù)據(jù)庫,需要進行如下準備:

1.安裝一個數(shù)據(jù)庫(這里使用mysql免安裝版)
2.下載該數(shù)據(jù)庫的驅動包(這里使用mysql官方提供的mysql-connector-java-5.1.39-bin)

PS:我的這個免安裝的MySQL不知道為什么存儲的中文都是亂碼,參考了別人的解決方案修改了my-default.ini文件也不行,如果各位看到這篇文章的大佬有解決辦法,還請不吝賜教,感謝!

一、啟動數(shù)據(jù)庫

將mysql免安裝壓縮包解壓到某目錄下
雙擊 mysql-5.6.24-win32 => bin => mysqld.exe 啟動數(shù)據(jù)庫
正常情況下會閃過一個黑框
打開DOS窗口,進入mysql文件夾所在盤(我的是D盤)
依次輸入如下命令:
cd mysql* => cd bin =>mysql -uroot
(出現(xiàn)如下圖提示說明已經(jīng)進入數(shù)據(jù)庫,可以開始使用數(shù)據(jù)庫了)

二、創(chuàng)建數(shù)據(jù)庫

你可以直接在DOS窗口輸入sql語句創(chuàng)建數(shù)據(jù)庫;
也可以將你的所有操作保存到一個sql文件,再在DOS窗口導入這個文件。(由于創(chuàng)建數(shù)據(jù)庫的命令較多,這里采用第二種方法)
創(chuàng)建db.sql文件(我保存到了D盤)

create database if not exists stu;
use stu;
drop table if exists classes;
create table classes(
id int(10) primary key auto_increment,
num varchar(12) not null ,
name varchar(45) not null,
teacher varchar(15) not null,
unique(name),
unique(num)
);
insert into classes(num,name,teacher ) values('20170101','Mike','Tom');
insert into classes(num,name,teacher ) values('20170102','Nancy','Tom');
insert into classes(num,name,teacher ) values('20170103','Frank','Tom');

然后在DOS窗口輸入:source d:/db.sql;
(出現(xiàn)如下圖提示說明導入成功)

查看數(shù)據(jù)庫里的數(shù)據(jù)

三、JAVA程序導入jar包

eclipse里創(chuàng)建項目jdbc
將下載好的jar包復制到該項目下

右擊jar包 => Build Path => Add To Build Path

四、連接數(shù)據(jù)庫

創(chuàng)建DBCon文件,獲取數(shù)據(jù)庫連接對象

package db;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class DBCon {
?? ?public Connection con=null; ? ?//創(chuàng)建數(shù)據(jù)庫連接對象
?? ?String url="jdbc:mysql://localhost:3306/stu"; ? //指定所要連接的數(shù)據(jù)庫的URL
?? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ??? ? ? ?//3306表示要連接的是本地數(shù)據(jù)庫;stu為要連接的具體數(shù)據(jù)庫名稱
?? ?String user="root"; ? ? ? //用戶名
? ? String password=""; ? ? ? //密碼
? ? public Connection getConnection() {
? ? ?? ?try {
?? ??? ??? ?Class.forName("com.mysql.jdbc.Driver"); ? ?//加載數(shù)據(jù)庫驅動器
?? ??? ??? ?
?? ??? ?} catch (ClassNotFoundException e) {
?? ??? ??? ?// TODO Auto-generated catch block
?? ??? ??? ?e.printStackTrace();
?? ??? ?}
? ? ?? ?try {
?? ??? ??? ?con=(Connection)DriverManager.getConnection(url, user, password);
?? ??? ?} catch (SQLException e) {
?? ??? ??? ?// TODO Auto-generated catch block
?? ??? ??? ?e.printStackTrace();
?? ??? ?}
?? ??? ?return con;
? ? }
}

五、測試

創(chuàng)建Classes類文件,保存和訪問學生數(shù)據(jù)

public class Classes {
?? ?private String num;
?? ?private String name;
?? ?private String teacher;
?? ?public Classes() {
?? ??? ?super();
?? ??? ?// TODO Auto-generated constructor stub
?? ?}
?? ?public Classes(String num, String name, String teacher) {
?? ??? ?super();
?? ??? ?this.num = num;
?? ??? ?this.name = name;
?? ??? ?this.teacher = teacher;
?? ?}
?? ?public String getNum() {
?? ??? ?return num;
?? ?}
?? ?public void setNum(String num) {
?? ??? ?this.num = num;
?? ?}
?? ?public String getName() {
?? ??? ?return name;
?? ?}
?? ?public void setName(String name) {
?? ??? ?this.name = name;
?? ?}
?? ?public String getTeacher() {
?? ??? ?return teacher;
?? ?}
?? ?public void setTeacher(String teacher) {
?? ??? ?this.teacher = teacher;
?? ?}
?? ?

}

創(chuàng)建測試類Test

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

import db.DBCon;

public class Test {
?? ?
?? ?public static void main(String[] args) {
?? ??? ?// TODO Auto-generated method stub
?? ??? ?Connection cn;
?? ??? ?PreparedStatement psm=null;?? ?//PrepareStatement接口用來執(zhí)行動態(tài)的sql語句
?? ??? ?ResultSet rs;?? ?//ResultSet接口用來暫存數(shù)據(jù)庫查詢出的結果集
?? ??? ?DBCon dbcon=new DBCon();
?? ??? ?cn=dbcon.getConnection();?? ?//獲取數(shù)據(jù)庫對象
?? ??? ?Classes classes=new Classes();
?? ??? ?String sql="select * from classes";
?? ??? ?try {
?? ??? ??? ?psm=cn.prepareStatement(sql);?? ?//實例執(zhí)行sql語句
?? ??? ??? ?rs=psm.executeQuery();?? ?//將結果賦給rs指針
?? ??? ??? ?if(rs.next()) {?? ??? ??? ?//判斷是否查詢到結果
?? ??? ??? ??? ?rs.absolute(0);?? ??? ?//將rs指針置于結果集最上方
?? ??? ??? ??? ?while(rs.next()) {
?? ??? ??? ??? ??? ?String classNum=rs.getString(2);
?? ??? ??? ??? ??? ?String className=rs.getString(3);
?? ??? ??? ??? ??? ?String classTeacher=rs.getString(4);
?? ??? ??? ??? ??? ?classes.setNum(classNum);
?? ??? ??? ??? ??? ?classes.setName(className);
?? ??? ??? ??? ??? ?classes.setTeacher(classTeacher);
?? ??? ??? ??? ??? ?System.out.println(classes.getNum()+","+classes.getName()+","+classes.getTeacher());
?? ??? ??? ??? ?}
?? ??? ??? ??? ?
?? ??? ??? ?}
?? ??? ?} catch (SQLException e) {
?? ??? ??? ?// TODO Auto-generated catch block
?? ??? ??? ?e.printStackTrace();
?? ??? ?}
?? ??? ?
?? ?}

}

運行Test文件,出現(xiàn)所查詢內(nèi)容

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 解讀StringBuilder為何比String節(jié)省效率

    解讀StringBuilder為何比String節(jié)省效率

    StringBuilder比String節(jié)省效率的原因主要在于其可變性和性能開銷的降低,StringBuilder在內(nèi)部維護一個字符數(shù)組,可以直接在原有基礎上修改,避免了每次拼接時的額外復制操作
    2024-12-12
  • SpringSecurit鹽值加密的密碼驗證以及強密碼驗證過程

    SpringSecurit鹽值加密的密碼驗證以及強密碼驗證過程

    在密碼加密過程中,鹽值的使用可以增強密碼的安全性,如果忘記存儲鹽值,將無法驗證密碼,強密碼應包含數(shù)字、字母和特殊字符,長度應在8到30位之間,以提高賬戶安全
    2023-03-03
  • 基于opencv+java實現(xiàn)簡單圖形識別程序

    基于opencv+java實現(xiàn)簡單圖形識別程序

    這篇文章主要給大家介紹了如何基于opencv+java實現(xiàn)簡單圖形識別程序的相關資料,文中通過實例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2022-01-01
  • 一文帶你了解微服務架構中的"發(fā)件箱模式"

    一文帶你了解微服務架構中的"發(fā)件箱模式"

    微服務架構如今非常的流行,這個架構下可能經(jīng)常會遇到“雙寫”的場景。本文就和大家分享一個“發(fā)件箱模式”,?感興趣的小伙伴可以了解一下
    2023-01-01
  • 利用Java實現(xiàn)玩家打怪小游戲的完整過程

    利用Java實現(xiàn)玩家打怪小游戲的完整過程

    這篇文章主要介紹了如何使用Java創(chuàng)建一個簡單的“打怪小游戲”,游戲中的角色分為法師、戰(zhàn)士、BOSS和一個Team類,代碼展示了如何通過面向對象編程來實現(xiàn)一個基本的戰(zhàn)斗系統(tǒng),需要的朋友可以參考下
    2024-12-12
  • Java后端返回PDF預覽給前端的實現(xiàn)

    Java后端返回PDF預覽給前端的實現(xiàn)

    前端要預覽服務器PDF 可直接將要blob流返回給前端,即可用瀏覽器自帶pdf預覽功能打開,本文就來介紹一下如何實現(xiàn),感興趣的可以了解一下
    2023-09-09
  • spring-boot2.7.8添加swagger的案例詳解

    spring-boot2.7.8添加swagger的案例詳解

    這篇文章主要介紹了spring-boot2.7.8添加swagger的案例詳解,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2024-01-01
  • MyEclipse+Tomcat配置詳解(圖文)

    MyEclipse+Tomcat配置詳解(圖文)

    這篇文章主要介紹了MyEclipse+Tomcat配置詳解(圖文),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-01-01
  • java 實現(xiàn)圖片圓角處理、背景透明化

    java 實現(xiàn)圖片圓角處理、背景透明化

    這篇文章主要介紹了java 實現(xiàn)圖片圓角處理、背景透明化,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • JAVA中的函數(shù)接口示例詳解

    JAVA中的函數(shù)接口示例詳解

    創(chuàng)建一個自定義的Sayable接口,這是一個使用@FunctionalInterface注解的函數(shù)式接口,這篇文章主要介紹了JAVA中的函數(shù)接口,你都用過嗎,需要的朋友可以參考下
    2023-11-11

最新評論

云梦县| 苍梧县| 新乡市| 甘南县| 彭泽县| 古田县| 灌云县| 普宁市| 哈尔滨市| 岱山县| 齐河县| 太保市| 洛川县| 汝城县| 兴宁市| 高台县| 平安县| 吉木乃县| 志丹县| 和静县| 庆城县| 井陉县| 南丰县| 新密市| 额济纳旗| 博客| 宝清县| 仙游县| 来宾市| 常州市| 班戈县| 襄樊市| 青田县| 仁布县| 潮州市| 微博| 洛宁县| 富锦市| 安西县| 阿拉善盟| 扶绥县|