电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

JDBC核心技術(shù)詳解

瀏覽:94日期:2022-08-13 10:10:18
一、JDBC概述

1、數(shù)據(jù)的持久化

持久化(persistence):把數(shù)據(jù)保存到可掉電式存儲設(shè)備中以供之后使用。大多數(shù)情況下,特別是企業(yè)級應(yīng)用,數(shù)據(jù)持久化意味著將內(nèi)存中的數(shù)據(jù)保存到硬盤上加以'固化”,而持久化的實現(xiàn)過程大多通過各種關(guān)系數(shù)據(jù)庫來完成。

持久化的主要應(yīng)用是將內(nèi)存中的數(shù)據(jù)存儲在關(guān)系型數(shù)據(jù)庫中,當(dāng)然也可以存儲在磁盤文件、XML數(shù)據(jù)文件中。

JDBC核心技術(shù)詳解

2、Java 中的數(shù)據(jù)存儲技術(shù) 在Java中,數(shù)據(jù)庫存取技術(shù)可分為如下幾類:

ØJDBC直接訪問數(shù)據(jù)庫ØJDO技術(shù)Ø第三方O/R工具,如Hibernate, mybatis 等JDBC是java訪問數(shù)據(jù)庫的基石,JDO, Hibernate等只是更好的封裝了JDBC

3、JDBC基礎(chǔ)

JDBC核心技術(shù)詳解

連接數(shù)據(jù)庫:

JDBC核心技術(shù)詳解JDBC核心技術(shù)詳解

4、JDBC體系結(jié)構(gòu)

JDBC接口(API)包括兩個層次:

Ø 面向應(yīng)用的API:Java API,抽象接口,供應(yīng)用程序開發(fā)人員使用(連接數(shù)據(jù)庫,執(zhí)行SQL語句,獲得結(jié)果)。

Ø 面向數(shù)據(jù)庫的API:Java Driver API,供開發(fā)商開發(fā)數(shù)據(jù)庫驅(qū)動程序用。

JDBC核心技術(shù)詳解

5、JDBC API

JDBC API 是一系列的接口,它使得應(yīng)用程序能夠進行數(shù)據(jù)庫聯(lián)接,執(zhí)行SQL語句,并且得到返回結(jié)果。

JDBC核心技術(shù)詳解

6、JDBC程序訪問數(shù)據(jù)庫步驟

JDBC核心技術(shù)詳解JDBC核心技術(shù)詳解

二、獲取數(shù)據(jù)庫連接

1、Driver 接口

java.sql.Driver 接口是所有 JDBC 驅(qū)動程序需要實現(xiàn)的接口。這個接口是提供給數(shù)據(jù)庫廠商使用的,不同數(shù)據(jù)庫廠商提供不同的實現(xiàn)

在程序中不需要直接去訪問實現(xiàn)了 Driver 接口的類,而是由驅(qū)動程序管理器類(java.sql.DriverManager)去調(diào)用這些Driver實現(xiàn)ØOracle的驅(qū)動:oracle.jdbc.driver.OracleDriverØmySql的驅(qū)動: com.mysql.jdbc.Driver

2、加載與注冊 JDBC 驅(qū)動

JDBC核心技術(shù)詳解

3、建立連接(Connection)

JDBC核心技術(shù)詳解

4、幾種常用數(shù)據(jù)庫的JDBC URL

JDBC核心技術(shù)詳解

連接mysql代碼實例:

import java.io.InputStream;import java.sql.DriverManager;import java.sql.SQLException;import java.util.Properties;import org.junit.Test;import com.mysql.jdbc.Connection;import com.mysql.jdbc.Driver;public class testconnction01 { /** * @throws SQLException */ @Test //方式一public void testConnection011() throws SQLException {Driver driver = new com.mysql.jdbc.Driver();String url = 'jdbc:mysql://localhost:3306/test';Properties info = new Properties();info.setProperty('user', 'root');info.setProperty('password', 'root');Connection collection = (Connection) driver.connect(url, info);System.out.println(collection);}@Test //方式二,對方式一的迭代,使得程序具有更好的可移植性 public void testConnection02() throws Exception { //獲取Driver實現(xiàn)類對象;使用反射 Class clazz= Class.forName('com.mysql.jdbc.Driver'); Driver driver=(Driver) clazz.newInstance(); //提供要連接的數(shù)據(jù)庫 String url = 'jdbc:mysql://localhost:3306/test'; //提供連接需要的用戶名和密碼 Properties info = new Properties(); info.setProperty('user', 'root'); info.setProperty('password', 'root'); //獲取連接 Connection collection = (Connection) driver.connect(url, info); System.out.println(collection); }@Test //方式三,使用DriverManager替換Driver public void testConnection03() throws Exception { Class clazz= Class.forName('com.mysql.jdbc.Driver'); Driver driver=(Driver) clazz.newInstance(); //提供另外三個連接的基本信息; String url ='jdbc:mysql://localhost:3306/test'; String user ='root'; String password ='root'; //注冊驅(qū)動 DriverManager.registerDriver(driver);//獲取連接 Connection connection= (Connection) DriverManager.getConnection(url,user,password); System.out.println(connection); }@Test //方式四,可以只是加載驅(qū)動,不用是示的注冊驅(qū)動過了。 public void testConnection04() throws Exception { //提供另外三個連接的基本信息; String url ='jdbc:mysql://localhost:3306/test'; String user ='root'; String password ='root'; Class.forName('com.mysql.jdbc.Driver'); // Class clazz= Class.forName('com.mysql.jdbc.Driver');// Driver driver=(Driver) clazz.newInstance();// // //注冊驅(qū)動// DriverManager.registerDriver(driver);////獲取連接 Connection connection= (Connection) DriverManager.getConnection(url,user,password); System.out.println(connection); }@Test //方式五,(final版):將數(shù)據(jù)庫連接需要的4個基本信息聲明在配置文件中,通過讀取配置文件的方式,獲取連接 //實現(xiàn)了數(shù)據(jù)和代碼的分離(解耦) public void testConnection05() throws Exception { //讀取配置文件的4個基本信息 InputStream is = testconnction01.class.getClassLoader().getResourceAsStream('jdbc.properties'); Properties p =new Properties(); p.load(is); String user = p.getProperty('user'); String password = p.getProperty('password'); String url = p.getProperty('url'); String driverClass =p.getProperty('driverClass'); Class.forName(driverClass); //獲取連接 Connection connection= (Connection) DriverManager.getConnection(url,user,password); System.out.println(connection); }}

5、使用Statement操作數(shù)據(jù)表的弊端 a、需要拼寫SQL語句

JDBC核心技術(shù)詳解

6、Statement操作會導(dǎo)致SQL注入攻擊

JDBC核心技術(shù)詳解

數(shù)據(jù)庫連接被用于向數(shù)據(jù)庫服務(wù)器發(fā)送命令和SQL語句,并接受數(shù)據(jù)庫服務(wù)器返回的結(jié)果。其實一個數(shù)據(jù)庫連接就是一個Socket連接。

在java.sql包中有3個接口分別定義了對數(shù)據(jù)庫的調(diào)用的不同方式:

Statement :用于執(zhí)行靜態(tài)SQL語句并返回它所生成結(jié)果的對象。PrepatedIatement : SQL語句被預(yù)編譯并存儲在此對象中,可以使用此對象多次高效地執(zhí)行該語句。CallableStatement :用于執(zhí)行SQL存儲過程

-JDBC核心技術(shù)詳解

JDBC核心技術(shù)詳解JDBC核心技術(shù)詳解

到此這篇關(guān)于JDBC核心技術(shù)詳解的文章就介紹到這了,更多相關(guān)JDBC核心技術(shù)內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: JDBC
相關(guān)文章:
主站蜘蛛池模板: 超声骨密度仪,双能X射线骨密度仪【起草单位】,骨密度检测仪厂家 - 品源医疗(江苏)有限公司 | 冷却塔风机厂家_静音冷却塔风机_冷却塔电机维修更换维修-广东特菱节能空调设备有限公司 | CE认证_产品欧盟ROHS-REACH检测机构-商通检测 | 台式恒温摇床价格_大容量恒温摇床厂家-上海量壹科学仪器有限公司 | Akribis直线电机_直线模组_力矩电机_直线电机平台|雅科贝思Akribis-杭州摩森机电科技有限公司 | 康明斯发电机,上柴柴油发电机,玉柴柴油发电机组_海南重康电力官网 | 临海涌泉蜜桔官网|涌泉蜜桔微商批发代理|涌泉蜜桔供应链|涌泉蜜桔一件代发 | 亿诺千企网-企业核心产品贸易| 紧急切断阀_气动切断阀_不锈钢阀门_截止阀_球阀_蝶阀_闸阀-上海上兆阀门制造有限公司 | 沈阳真空机_沈阳真空包装机_沈阳大米真空包装机-沈阳海鹞真空包装机械有限公司 | 北京银联移动POS机办理_收银POS机_智能pos机_刷卡机_收银系统_个人POS机-谷骐科技【官网】 | 驾驶人在线_专业学车门户网站 | 分光色差仪,测色仪,反透射灯箱,爱色丽分光光度仪,美能达色差仪维修_苏州欣美和仪器有限公司 | 安徽合肥格力空调专卖店_格力中央空调_格力空调总经销公司代理-皖格制冷设备 | 旋转/数显粘度计-运动粘度测定仪-上海平轩科学仪器 | 发电机组|柴油发电机组-批发,上柴,玉柴,潍柴,康明斯柴油发电机厂家直销 | 对辊破碎机_四辊破碎机_双齿辊破碎机_华盛铭重工 | 磁力去毛刺机_去毛刺磁力抛光机_磁力光饰机_磁力滚抛机_精密金属零件去毛刺机厂家-冠古科技 | 包装机传感器-搅拌站传感器-山东称重传感器厂家-济南泰钦电气 | 全自动在线分板机_铣刀式在线分板机_曲线分板机_PCB分板机-东莞市亿协自动化设备有限公司 | 实战IT培训机构_IT培训班选大学生IT技术培训中心_中公优就业 | 赛默飞Thermo veritiproPCR仪|ProFlex3 x 32PCR系统|Countess3细胞计数仪|371|3111二氧化碳培养箱|Mirco17R|Mirco21R离心机|仟诺生物 | 智慧水务|智慧供排水利信息化|水厂软硬件系统-上海敢创 | 飞飞影视_热门电影在线观看_影视大全 | 光栅尺_Magnescale探规_磁栅尺_笔式位移传感器_苏州德美达 | 天津蒸汽/热水锅炉-电锅炉安装维修直销厂家-天津鑫淼暖通设备有限公司 | 北京租车公司_汽车/客车/班车/大巴车租赁_商务会议/展会用车/旅游大巴出租_北京桐顺创业租车公司 | 搜活动房网—活动房_集装箱活动房_集成房屋_活动房屋 | 香蕉筛|直线|等厚|弧形|振动筛|香蕉筛厂家-洛阳隆中重工 | 全钢实验台,实验室工作台厂家-无锡市辰之航装饰材料有限公司 | 中高频感应加热设备|高频淬火设备|超音频感应加热电源|不锈钢管光亮退火机|真空管烤消设备 - 郑州蓝硕工业炉设备有限公司 | 工业胀紧套_万向节联轴器_链条-规格齐全-型号选购-非标订做-厂家批发价格-上海乙谛精密机械有限公司 | 污泥烘干机-低温干化机-工业污泥烘干设备厂家-焦作市真节能环保设备科技有限公司 | 动环监控_机房环境监控_DCIM_机房漏水检测-斯特纽 | 河南新乡德诚生产厂家主营震动筛,振动筛设备,筛机,塑料震动筛选机 | 北京印刷厂_北京印刷_北京印刷公司_北京印刷厂家_北京东爵盛世印刷有限公司 | 环保袋,无纺布袋,无纺布打孔袋,保温袋,环保袋定制,环保袋厂家,环雅包装-十七年环保袋定制厂家 | 恒温振荡混匀器-微孔板振荡器厂家-多管涡旋混匀器厂家-合肥艾本森(www.17world.net) | 智成电子深圳tdk一级代理-提供TDK电容电感贴片蜂鸣器磁芯lambda电源代理经销,TDK代理商有哪些TDK一级代理商排名查询。-深圳tdk一级代理 | 天坛家具官网| 创客匠人-让IP变现不走弯路|