數據庫操作-MySQL-4(JDBC編程)

JDBC:通過Java代碼操作mysql數據庫,數據庫會提供一些API供我們調用

MySQL、Oracle、等API有差異,但是Java統一了所有接口,即JDBC;

原始api-驅動包(類似轉接頭)-統一的api-Java

驅動包:安裝并引入項目里

下載第三方程序包:

  • 官網
  • github(Steam++)
  • 中央倉庫(下載驅動包“MySQL Connector Java”)

Maven Repository: Search/Browse/Explore

ps.驅動包(.jar)要和mysql版本匹配

把驅動包引入項目:

1.復制到目錄中,一般叫lib

2.把目錄標記成庫的目錄

1 具體實現

1.1準備工作

先創建一個數據源DataSource (javax.sql? ? -? ? JDBC的包)

DataSource dataSource=new MysqlDataSource();//向上轉型
((MysqlDataSource)dataSource).setUrl("地址");//向下轉型
((MysqlDataSource)dataSource).setUser("root");//用戶名
((MysqlDataSource)dataSource).setPassword("123456");//密碼

地址: jdbc:mysql://127.0.0.1:3306/database名?characterEncoding=utf8&useSSL=false

127.0.0.1??環回ip地址,網絡上一個主機所在位置,自己給自己發消息,如果jdbc和mysql在同一個主機,就用環回ip,否則用對應主機ip(cmd? ipconfig);

3306 端口號(具體到某個軟件)

useSSL=false 是否進行加密

后面是訪問資源時需要哪些參數

root 管理員mysql默認自帶用戶

高內聚:把相關聯的功能放在一起;

低內聚:把相關聯功能零散分布;

低耦合:兩個模塊之間的關聯關系不是很緊密,一個變化對另一個影響小

URL(網址) 表示網絡上的資源位置

1.2建立連接

Connection connection=dataSource.getConnection();//java.sql包
//拋出異常 SQLException

1.3構造sql

String sql="mysql語句";
PreparedStatement statement=connection.prepareStatement(sql);
//插入用戶自行輸入數據
String sql="insert into student values(?,?)";
PreparedStatement statement=connection.preparestatement(sql);
statement.setInt(值,對應列名);
statement.setString(值,對應列名);

PreparedStatement 準備好的、預處理的語句;

1.4把sql發給服務器

//寫操作
//n表示影響到的行數
int n=statement.executeUpdate();//insert、update、delete  寫操作
//讀操作
//ResuleSet表示查詢到的結果集合(臨時表)
ResultSet resultSet=statement.executeQuery();//select 讀操作
//遍歷表
while(resultSet.next()){
//針對這一行處理,取出列的數據
int id=resultSet.getInt("列名");}

1.5關閉連接 釋放資源

//寫操作
statement.close();
connection.close();
//后生成的先釋放
//讀操作
resultSet.close();
statement.close();
connection.close();

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/83497.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/83497.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/83497.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

windows修改躍點數調整網絡優先級

Windows有兩個網卡,一個有線網卡,一個無線網卡,通過修改躍點數來調整優先使用的網卡,這種只是眾多設置方式中的其中一種設置方式 文檔編寫時間:2025年6月 1.打開電腦的網絡連接 cmd--ncpa.cpl 在cmd中運行ncpa.cpl可…

實驗設計與分析(第6版,Montgomery著,傅玨生譯) 第10章擬合回歸模型10.9節思考題10.1 R語言解題

本文是實驗設計與分析&#xff08;第6版&#xff0c;Montgomery著&#xff0c;傅玨生譯) 第10章擬合回歸模型10.9節思考題10.1 R語言解題。主要涉及線性回歸、回歸的顯著性、回歸系數的置信區間。 vial <- seq(1, 10, 1) Viscosity <- c(160,171,175,182,184,181,188,19…

【深入 LangChain 的 Model I/O】提示設計、模型調用與輸出解析全解析

目錄 什么是 Model I/O&#xff1f; 一、提示模板&#xff08;PromptTemplate&#xff09; 1.1 什么是提示模板&#xff1f; 1.2 常見提示模板類型 二、模型調用&#xff08;Model Predict&#xff09; 三、輸出解析&#xff08;Output Parser&#xff09; 綜合示例&…

OD 算法題 B卷【跳格子2】

文章目錄 跳格子2 跳格子2 小明和朋友玩跳格子游戲&#xff0c;有n個連續格子組成的圓圈&#xff0c;每個格子有不同的分數&#xff0c;小朋友可以選擇從任意格子起跳&#xff0c;但是不能跳連續的格子&#xff0c;不能回頭跳&#xff0c;也不能超過一圈&#xff0c;給定一個代…

客戶線索商機怎么管?客戶線索商機管理工具哪個好?

做銷售、搞運營的朋友肯定都有過這種煩惱&#xff1a;每天收到海量客戶線索&#xff0c;卻不知道從哪條開始跟進&#xff1b;試了好幾個管理工具&#xff0c;要么功能太復雜&#xff0c;要么用起來不趁手。其實選對客戶線索商機管理工具&#xff0c;就像找到靠譜的 “銷售小助手…

008房屋租賃系統技術揭秘:構建智能租賃服務生態

房屋租賃系統技術揭秘&#xff1a;構建智能租賃服務生態 在房地產租賃市場日益活躍的當下&#xff0c;房屋租賃系統成為連接房東與租客的重要數字化橋梁。該系統集成用戶管理、房屋信息等多個核心模塊&#xff0c;面向管理員、房東和用戶三類角色&#xff0c;通過前臺展示與后…

SpringBoot 系列之集成 RabbitMQ 實現高效流量控制

系列博客專欄&#xff1a; JVM系列博客專欄SpringBoot系列博客 Spring Boot 2.2.1 集成 RabbitMQ 實現高效流量控制 在分布式系統中&#xff0c;消息隊列是實現異步通信、解耦服務的重要組件。RabbitMQ 作為一款成熟的開源消息隊列&#xff0c;廣泛應用于各類項目中。本文將…

新視訊影視官網入口,影視動漫在線播放網站

新視訊影視是一個免費為廣大追劇迷提供在線播放服務的影視平臺&#xff0c;深受眾多影視愛好者的喜愛。它涵蓋了大量免費的VIP電視劇資源、最新上映的大片、好看的綜藝節目以及動漫視頻&#xff0c;是一個播放速度快、資源多的免費影視網站。用戶無需注冊或登錄&#xff0c;即可…

【使用】【經驗】docker 清理未使用的鏡像的命令

docker images prune在 Docker 中清理未使用的鏡像&#xff08;包括懸空鏡像和完全未被引用的鏡像&#xff09;&#xff0c;可以使用以下命令&#xff1a; 1. ?刪除所有懸空鏡像?&#xff08;推薦常用&#xff09; docker image prune?懸空鏡像 (dangling images)?? 是指…

OpenCV CUDA模塊圖像處理------圖像融合函數blendLinear()

操作系統&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 編程語言&#xff1a;C11 算法描述 該函數執行 線性融合&#xff08;加權平均&#xff09; 兩個圖像 img1 和 img2&#xff0c;使用對應的權重圖 weights1 和 weights2。 融合公式…

【Typst】6.布局函數

概述 上節我們介紹了文檔結構元素的函數&#xff0c;本節介紹一些控制布局使用的函數&#xff0c;掌握他們之后你可以更進一步的控制頁面元素的布局。 系列目錄 1.Typst概述2.Typst標記語法和基礎樣式3.Typst腳本語法4.導入、包含和讀取5.文檔結構元素與函數6.布局函數 對齊…

【音視頻】FFmpeg 編碼H265

一、概述 實現了讀入本地yuv文件&#xff0c;通過libx265編碼為H265格式&#xff0c;并存儲到本地文件中 二、實現流程 準備文件 在build路徑下準備yuv文件 在項目中添加文件參數&#xff0c;輸出為h265文件&#xff0c;使用libx265編碼 初始化解碼器 通過傳進來的libx265…

ECreator低代碼平臺-文件管理器的使用說明

Ecreator是中山華拓信息技術公司旗下的一款低代碼平臺&#xff0c;主要功能包含&#xff1a;文件管理器&#xff0c;表單數據管理器&#xff0c;儀表盤設計界面&#xff0c;內容頁面自定義等功能&#xff0c;可以用于快速低成本的構建網站和企業內部應用。 下面介紹一下文件管…

高考加油!UI界面生成器!

這個高考助力標語生成器具有以下特點&#xff1a; 視覺設計&#xff1a;采用了藍色為主色調&#xff0c;搭配漸變背景和圓形裝飾元素&#xff0c;營造出寧靜而充滿希望的氛圍&#xff0c;非常適合高考主題。 標語生成&#xff1a;內置了超過 100 條精心挑選的高考加油標語&a…

阿姆達爾定律的演進:古斯塔夫森定律

前言 在上一篇文章《使用阿姆達爾定律來提升效率》中提到的阿姆達爾定律前提是假設問題的規模保持不變&#xff0c;并且給定一臺速度更快的機器&#xff0c;目標是更快地解決問題。然而&#xff0c;在大多數情況下&#xff0c;這并不完全正確。當有一臺更快的機器時&#xff0…

【RabbitMQ】- Channel和Delivery Tag機制

在 RabbitMQ 的消費者代碼中&#xff0c;Channel 和 tag 參數的存在是為了實現消息確認機制&#xff08;Acknowledgment&#xff09;和精細化的消息控制。 Channel 參數 作用 Channel 是 AMQP 協議的核心操作接口&#xff0c;通過它可以直接與 RabbitMQ 交互&#xff1a; 手…

核心機制:流量控制

搭配滑動窗口使用的 窗口大小 窗口越大,傳輸速度就越快,但是也不能無限大,太大了,對于可靠性會有影響 比如發生方以非常快的速度,發送,接收方的處理速度跟不上,也就會導致有效數據被接受方丟棄(又得重傳) 流量控制,就是根據接收方的處理能力(如何衡量?),干預到發送方的發送…

深度強化學習賦能城市消防優化,中科院團隊提出DRL新方法破解設施配置難題

在城市建設與發展中&#xff0c;地理空間優化至關重要。從工業園區選址&#xff0c;到公共服務設施布局&#xff0c;它都發揮著關鍵作用。但傳統求解方法存在諸多局限&#xff0c;如今&#xff0c;深度學習技術為其帶來了新的轉機。 近日&#xff0c;在中國地理學會地理模型與…

安科電動機保護器通過ModbusRTU轉profinet網關與PLC通訊

安科電動機保護器通過ModbusRTU轉profinet網關與PLC通訊 在工業自動化領域&#xff0c;設備間的通信和數據交互至關重要。Modbus作為一種常用的通訊協議&#xff0c;廣泛應用于各種工業現場&#xff1b;而Profinet則憑借其高效、實時性&#xff0c;在工業以太網通訊中占據重要…

python直方圖

在Python中&#xff0c;繪制直方圖&#xff08;Histogram&#xff09;是一項非常常見的任務&#xff0c;通常用于數據可視化&#xff0c;以展示數據的分布情況。Python中有多種庫可以繪制直方圖&#xff0c;其中最常用的兩個庫是Matplotlib和Seaborn。此外&#xff0c;Pandas庫…