版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
學(xué)習(xí)領(lǐng)域8Java數(shù)據(jù)庫編程
課后習(xí)題
一、填空題
1.URL定義了連接數(shù)據(jù)庫時的協(xié)議、子協(xié)議和數(shù)據(jù)庫標(biāo)識。
2JDBCAPI提供的連接和操作數(shù)據(jù)庫的類和接口位于javax.sql_____包和
java.sql包中。
3.ResultSet對象的next()方法表示將光標(biāo)從當(dāng)前位置移向下一行。
4.一個Statement對象,可以執(zhí)行多個sql語句以后,批量更新。這多個語句可
以是delete、update、insert等或兼有
5Java數(shù)據(jù)庫操作基本流程:加載數(shù)據(jù)庫驅(qū)動、取得數(shù)據(jù)庫連接、執(zhí)行sql語句、
處理執(zhí)行結(jié)果、釋放數(shù)據(jù)庫連接。
6.接口Statement中定義的execute方法的返回類型是_1300比211_。
7.executeQuery方法返回的類型是_ResultSet_。
8.executeUpdate返回的類型是
9.JDBC的全稱是______JavaDataBaseConnectivityo
10.DAO的全稱DataAccessObjecto
二、單選題
1.下面是一組對JDBC的描述,正確的說法是—Bo
A.JDBC是一個數(shù)據(jù)庫管理系統(tǒng)
BJDBC是一個由類和接口組成的API
C.JDBC是一個驅(qū)動查詢
DJDBC是一組命令
2.創(chuàng)建數(shù)據(jù)庫連接的目的是____Ao
A.建立一條通往某個數(shù)據(jù)庫的通道
B.加載數(shù)據(jù)庫驅(qū)動程序
C.清空數(shù)據(jù)庫
D.為數(shù)據(jù)庫增加記錄
3.要為數(shù)據(jù)庫增加記錄,應(yīng)調(diào)用Statement對象的C方法。
A.addRecord()B.executeQuery()C.executeUpdate()D.executeAdd()
4.PreparedStatement對象的C方法執(zhí)行包含參數(shù)的動態(tài)INSERT、
UPDATE.DELETE語句。
A.query()B.execute()C.executeUpdate()D.executeQuery()
5.ResultSetMetaData對象的A方法返回指定列序號的列名。
A.getColumnName()B.getColumnCount()
C.getColumnLabel()D.getColumnType()
6.下列SQL語句中,哪一項可用executeQuery()方法發(fā)送到數(shù)據(jù)庫C
A.UpdateB.DeleteC.SelectD.Insert
7.下面哪個選項不是客戶端的Java應(yīng)用程序需要完成的工作A。
A.與數(shù)據(jù)庫的某個表建立連接B.與特定的數(shù)據(jù)庫建立連接
C.發(fā)送SQL語句,得到查詢結(jié)果D.關(guān)閉與JDBC服務(wù)器的連接
8.使用JDBC訪問數(shù)據(jù)庫時,下列關(guān)于JDBC的說法正確的是(C)。
A.Connection接口負(fù)責(zé)執(zhí)行SQL語句。
B.可以使用Class.forName()方法把JDBC驅(qū)動類裝載入Java虛擬機(jī)中。
CStatement接口由Connection產(chǎn)生負(fù)責(zé)保存返回的查詢結(jié)果。
D.DriverManager類負(fù)責(zé)連接數(shù)據(jù)庫并傳送數(shù)據(jù)。
9.在Java中,以下關(guān)于得到ResultSet對象、PreparedStatement對象、Statement
對象的說法,正確的是(A)
A.可以使用Statement對象的executeQuery方法返回ResultSet對象
B.可以使用Connection對象的createStatement方法獲得PreparedStatement對
象
C.可以使用Connection對象的createStatement方法獲得ResultSet對象
D.可以使用Connection對象的executeQuery方法返回ResultSet對象
10.在下列選項中,哪一個可執(zhí)行同構(gòu)的sql語句?(C)
A.CallableStatement
B.Statement
C.PreparedStatement
ll.JDBC編程的異常類型分為()
A.SQLExceptionB.SQLErrorC.SQLFatalD.SQLTruncation
12號妾口Statement中定義的execute方法的返回類型所代表的含義是(C)
A.結(jié)果集ResultSet
B.受影響的記錄數(shù)量
C.有無ResultSet返回
13.JDBC接口Statement中定義的execute。方法的返回類型是(C)。
A.ResultSetB.intC.booleanD.受影響的記錄數(shù)量
14Java程序與數(shù)據(jù)庫連接后,需要查看某個表中的數(shù)據(jù),使用下列哪個語句?(B)
A.executeQuery()B.executeUpdate()CexecuteEdit()D.executeSelect()
15.java程序與數(shù)據(jù)庫連接后,需要修改某個表中的數(shù)據(jù),使用下列哪個語句?(B)
A.executeQuery()B.executeUpdate()CexecuteEdit()D.executeSelect()
16.在Java中JDBCAPI定義了一組用于與數(shù)據(jù)庫進(jìn)行通信的接口和類,它們包括
在(B)包。
A.java.IangB.java.sqIC.java.utilD.java.math
17.在Java中,使用JDBC開發(fā)應(yīng)用程序時處理步驟正確的是(A)。
A.I.加載數(shù)據(jù)庫驅(qū)動;2.創(chuàng)建數(shù)據(jù)庫連接;3.執(zhí)行SQL命令;4.處理結(jié)果
B.I.加載數(shù)據(jù)庫驅(qū)動;2..執(zhí)行SQL命令3創(chuàng)建數(shù)據(jù)庫連接;4.處理結(jié)果
C.I.創(chuàng)建數(shù)據(jù)庫連接2加載數(shù)據(jù)庫驅(qū)動;3.執(zhí)行SQL命令;4.處理結(jié)果
D.L創(chuàng)建數(shù)據(jù)庫連接2執(zhí)行SQL命令;3.加載數(shù)據(jù)庫驅(qū)動;4.處理結(jié)果
18.假設(shè)Mysql數(shù)據(jù)庫中有表book,包含兩個字段:id整型,title字符型。向此
表插入數(shù)據(jù)的Java代碼片段如下所示,其中con為已正確獲得的連接數(shù)據(jù)庫的
^Connection對象,則以下描述正確的是(C)
PreparedStatementpsrz77r-co/7.preparedStatement("insertintobook(id,title)val
ues(?,?)");
Pstmt.setlnt(0,10);
Pstmt.setString(l,"Java");
Pstmt.excuteUpdate();
A.創(chuàng)建PreparedStatement對象的語句有錯誤
B.向book表插入數(shù)據(jù)的sql語句有錯誤
C.setlnt、setString方法有缶昔誤
D.PreparedStatement沒有executeUpdate。方法
19以下選項中關(guān)于DAO模式的說法錯誤的是(C)
ADAO是"DataAccessObject”的含義,實(shí)現(xiàn)對數(shù)據(jù)庫資源的訪問。
B.DAO模式中要定義DAO接口和實(shí)現(xiàn)類,隔離了不同數(shù)據(jù)庫的實(shí)現(xiàn)。
C.DAO負(fù)責(zé)執(zhí)行業(yè)務(wù)邏輯操作,將業(yè)務(wù)邏輯和數(shù)據(jù)訪問隔離開來
D.使用DAO模式提高了數(shù)據(jù)訪問代碼的復(fù)用性
20以下選項中關(guān)于Java分層開發(fā)技術(shù)中實(shí)體類的說法錯誤的是(D)
A.在分層開發(fā)中,不同層之間可以通過實(shí)體類來傳輸數(shù)據(jù)
B.實(shí)體類一般對應(yīng)一個數(shù)據(jù)庫表,其屬性和數(shù)據(jù)庫表的字段對應(yīng)
C.實(shí)體類最好實(shí)現(xiàn)java.io.Serializable,支持序列化機(jī)制
D.實(shí)體類的屬性和方法一般均使用public修飾
21為了實(shí)現(xiàn)在Java的程序中調(diào)用帶參數(shù)的SQL語句,應(yīng)該采用那個類來完成
(B)o
A.Connection類
B.PreparedStatement類
C.ResultSet類
0.Statement類
22.下列選項對DBCP數(shù)據(jù)庫連接池描述錯誤的是:(D)
A.initialSize屬性,表示初始化連接數(shù)目
B.maxActive屬性設(shè)置最大的活動連接數(shù)
C.maxWait屬性,表式連接池中連接用完時,新的請求等待時間
D.maxldle表示最小空閑連接數(shù)
23.下面關(guān)于JSON說法錯誤的是:(D)
AJson是一種數(shù)據(jù)交互格式
B.json的數(shù)據(jù)格式有兩種為0和口
C.json數(shù)據(jù)用{)表示java中的對象,口表示Java中的List對象
D.{"1":"123"2":"234"3":"345"}不是json數(shù)據(jù)
三、簡答題
1.簡述java.sql包中主要類和接口的作用。
答題要點(diǎn):
Driver接口,它是所有JDBC驅(qū)動程序必須實(shí)現(xiàn)的接口。
DriverManager類,驅(qū)動程序管理器類,用于加載JDBC驅(qū)動并創(chuàng)建與數(shù)據(jù)庫的
連接。
Connection接口,表示與指定數(shù)據(jù)庫的連接。
Statement接口,將SQL語句傳送給數(shù)據(jù)庫并返回結(jié)果。
ResultSet接口,針對有返回結(jié)果的SQL語句,ResultSet接口用來處理結(jié)果。
2.簡述使用JDBC操作數(shù)據(jù)庫的基本步驟。
答題要點(diǎn):
JDBC操作數(shù)據(jù)庫的基本步驟:
加載JDBC驅(qū)動程序
獲取數(shù)據(jù)庫的連接
創(chuàng)J建Statement對象
執(zhí)行SQL語句
處理sql的返回結(jié)果
關(guān)閉連接
3.常用的數(shù)據(jù)庫操作對象有哪些?這些對象分別用來做什么?
答題要點(diǎn):
數(shù)據(jù)庫對象是數(shù)據(jù)庫的組成部分,除了數(shù)據(jù)庫本身外,常見的對象有:
表(Table),用來存放數(shù)據(jù)記錄。
索引(Index),索引是根據(jù)指定的數(shù)據(jù)庫表列建立起來的順序。
視圖(View),視圖是一個虛擬的表,是由查詢數(shù)據(jù)表產(chǎn)生的。
數(shù)據(jù)庫關(guān)系圖(Databasediagram),描述表之間的關(guān)系以及表的行列屬性。
默認(rèn)值(Default),對沒有指定其具體值的列或列數(shù)據(jù)項賦予事先設(shè)定好的值。
規(guī)則(Rule),對數(shù)據(jù)庫表中數(shù)據(jù)信息的限制,其限定的是表的列。
存儲過程(StoredProcedure),存是為完成特定功能而匯集在一起的一組SQL
程序語句,經(jīng)編譯后存儲在數(shù)據(jù)庫中的SQL程序。
觸發(fā)器(Trigger),是一個用戶定義的SQL事務(wù)命令的集合
用戶(User),是有權(quán)限訪問數(shù)據(jù)庫的使用者。
4.ResultSet對象的作用是什么?該對象的常用方法有哪些?
答題要點(diǎn):
ResultSet對象的作用是用來存放查詢結(jié)果。
ResultSet常用方法有:
next()將光標(biāo)從當(dāng)前位置向下移動一行,也就是讀取下一行
previousQ將光標(biāo)從當(dāng)前位置向上移動一行,也就是讀取上一行
close()關(guān)閉ResultSet對象
getlnt(int)以int的形式獲取結(jié)果集以當(dāng)前行指定序號的值以列的編號或者列
的名字
getlnt(String)以下跟以上一樣以此類推
getFloat(int)
getFloat(String)
getString(int)
getString(String)
getRowQ得到光標(biāo)當(dāng)前所指定的行號
absolute()光標(biāo)移動到row指定的行
5.刪除、增加、修改和查詢記錄的SQL語法是什么?其對應(yīng)的Statement方法又
是什么?
答題要點(diǎn):
增加記錄的SQL語法是:
Insertinto表名(字段1,字段2)values(字段1的值;字段2的值');
其使用Statement對象的executeUpdate。方法
刪除記錄的SQL語法是:
Delete表名where條件;
其使用Statement對象的executedpdate()方法
修改記錄的SQL語法是:
Update表名set字段名='賦值名'where條件字段名='條件值’;
其使用Statement對象的executedpdate()方法
查詢記錄的SQL語法是:
Select*from表名;
使用Statement對象的executeQuery。方法
6.Statement和PreparedStatement有什么區(qū)別?哪個性能更好?
答題要點(diǎn):
Statement和PreparedStatement的區(qū)別:
(1)PreparedStatement接口代表預(yù)編譯的語句,它主要的優(yōu)勢在于可以減少
SQL的編譯錯誤并增加SQL的安全性(減少SQL注射攻擊的可能性);
(2)PreparedStatement中的SQL語句是可以帶參數(shù)的,避免了用字符串連接
拼接SQL語句的麻煩和不安全;
(3)當(dāng)批量處理SQL或頻繁執(zhí)行相同的查詢時,PreparedStatement有明顯的
性能上的優(yōu)勢,由于數(shù)據(jù)庫可以將編譯優(yōu)化后的SQL語句緩存起來,下次執(zhí)行
相同結(jié)構(gòu)的語句時就會很快(不用再次編譯和生成執(zhí)行計劃)。
建議使用預(yù)編譯的PreparedStatement,不但效率高,能夠重用,而且安全。
7.在進(jìn)行數(shù)據(jù)庫編程時,連接池有什么作用?
答題要點(diǎn):
為了提升系統(tǒng)訪問數(shù)據(jù)庫的性能,可以事先創(chuàng)建若干連接置于連接池中,需要時
直接從連接池獲取,使用結(jié)束時歸還連接池而不必關(guān)閉連接,從而避免頻繁創(chuàng)建
和釋放連接所造成的開銷,這是典型的用空間換取時間的策略。
8.什么是DAO模式?
答題要點(diǎn):
DAO(DataAccessObject)是一個為數(shù)據(jù)庫或其他持久化機(jī)制提供了抽象接口
的對象,其中聲明增刪改查方法,當(dāng)需要和數(shù)據(jù)源進(jìn)行交互的時候則使用這個接
口,再設(shè)計DAO實(shí)現(xiàn)類DAOImpI,具體實(shí)現(xiàn)DAO接口中聲明的數(shù)據(jù)庫表操作
方法。使用。4。設(shè)計模式可以簡化大量代碼,增強(qiáng)程序的可移植性。
9.簡述Java使用statement接口執(zhí)行sql語句操作的方法
答題要點(diǎn):
statement執(zhí)行sql語句主要有兩種方法:
(1)對數(shù)據(jù)庫的增、刪、改等操作時,使用stmt.executeupdate(sql)執(zhí)行給定
語句,分別為、返回結(jié)果為受影響的行數(shù)。
sqlinsertsupdatedelete,
(2)對數(shù)據(jù)庫作查詢時,直接使用stmt.executequery(sql),返回結(jié)果為一個
resultset結(jié)果集。
10什么是JDBC?
答題要點(diǎn):
JDBC(JavaDataBaseConnectivity,java數(shù)據(jù)庫連接)是一種用于執(zhí)行SQL語句的
JavaAPI,可以為多種關(guān)系數(shù)據(jù)庫提供統(tǒng)一訪問,它由一組用〕ava語言編寫的類
和接口組成。
11.什么是第三方組件?
答題要點(diǎn):
第三方組件是針對某種軟件在應(yīng)用功能上的不足或缺陷,而由軟件編制方以外的
其他公司、組織或個人開發(fā)的相關(guān)組件。第三方組件一般是自定義組件或者用戶
組件,它們繼承自Java中的某些基類,重寫或者擴(kuò)展了一些方法和屬性,從而
能實(shí)現(xiàn)某些新的功能。
12.簡述第三方組件的使用方法。
答題要點(diǎn):
在Java工程項目中使用第三方組件的方法可歸納如下:
(1)下載第三方組件相應(yīng)的依賴包jar包文件。
(2)將jar包導(dǎo)入到Java工程項目中。
(3)引用jar包的接口、類、方法等編寫應(yīng)用程序。
13JS0N是什么?
答題要點(diǎn):
JSON的全稱是"JavaScriptObjectNotation”,意思是JavaScript對象表示
法,它是一種基于文本,獨(dú)立于語言的輕量級數(shù)據(jù)交換格式。JSON有兩種表示
結(jié)構(gòu),對象和數(shù)組。
14.數(shù)據(jù)庫連接池的思想是什么?有哪些常用的數(shù)據(jù)庫連接池?
答題要點(diǎn):
數(shù)據(jù)庫連
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 智能家居環(huán)境監(jiān)測與控制系統(tǒng)開發(fā)合同
- 時尚品牌設(shè)計與推廣合同
- 2024年百貨業(yè)質(zhì)押融資經(jīng)營協(xié)議樣本
- 鋼結(jié)構(gòu)建設(shè)勞務(wù)施工協(xié)議文本
- 制造業(yè)生產(chǎn)過程數(shù)據(jù)采集與分析系統(tǒng)合同
- 人工智能輔助企業(yè)課程設(shè)計與評價合同
- 2024年全面服務(wù)合作協(xié)議范本
- 安全保障服務(wù)年度協(xié)議書2024
- 2024年簡明暑假工勞務(wù)協(xié)議
- 化學(xué)礦的資源整合與協(xié)同發(fā)展考核試卷
- 高低壓電力系統(tǒng)預(yù)試驗(yàn)及維保服務(wù)方案
- 濾波電路課件講解
- 2024-2030年國內(nèi)鋁合金鎖行業(yè)市場發(fā)展分析及發(fā)展前景與投資機(jī)會研究報告
- 冶金企業(yè)的冶煉生產(chǎn)計劃三篇
- 課題論文:推動發(fā)展培育新質(zhì)生產(chǎn)力
- 12G614-1 砌體填充墻結(jié)構(gòu)構(gòu)造
- 燃?xì)饨?jīng)營安全重大隱患判定標(biāo)準(zhǔn)課件
- 小學(xué)一年級數(shù)學(xué)兩位數(shù)加減一位數(shù)競賽監(jiān)控模擬題
- CHT 8023-2011 機(jī)載激光雷達(dá)數(shù)據(jù)處理技術(shù)規(guī)范(正式版)
- 檢驗(yàn)科進(jìn)修匯報課件
- 年產(chǎn)10萬套新能源車電池托盤和儲能箱體項目可行性研究報告
評論
0/150
提交評論