《Java技术》第八次作业
《Java技術(shù)》第八次作業(yè)
(一)學(xué)習(xí)總結(jié)
1.用思維導(dǎo)圖對(duì)本周的學(xué)習(xí)內(nèi)容進(jìn)行總結(jié)。
2.通過(guò)實(shí)驗(yàn)內(nèi)容中的具體實(shí)例說(shuō)明在執(zhí)行executeUpdate()方法和executeQuery()方法中使用動(dòng)態(tài)參數(shù)時(shí),為什么要使用PreparedStatement接口而不使用Statement,比較使用兩種接口的不同之處。
使用PreparedStatement接口
使用Statement接口
原因:作為 Statement 的子類,PreparedStatement 繼承了 Statement 的所有功能。三種方法
execute、 executeQuery 和 executeUpdate 已被更改以使之不再需要參數(shù)。
雖然用PreparedStatement來(lái)代替Statement會(huì)使代碼多出幾行,但這樣的代碼無(wú)論從可讀性還是可維護(hù)性上來(lái)說(shuō).都比直接用Statement的代碼效率高。
不同之處:
在默認(rèn)情況下,同一時(shí)間每個(gè) Statement 對(duì)象在只能打開一個(gè) ResultSet 對(duì)象。因此,如果讀取一個(gè) ResultSet 對(duì)象與讀取另一個(gè)交叉,則這兩個(gè)對(duì)象必須是由不同的 Statement 對(duì)象生成的。如果存在某個(gè)語(yǔ)句的打開的當(dāng)前 ResultSet 對(duì)象,則 Statement 接口中的所有執(zhí)行方法都會(huì)隱式關(guān)閉它。
Statement 對(duì)象用于將 SQL 語(yǔ)句發(fā)送到數(shù)據(jù)庫(kù)中。實(shí)際上有三種 Statement 對(duì)象,它們都作為在給定連接上執(zhí)行 SQL 語(yǔ)句的包容器:Statement、PreparedStatement(它從 Statement 繼承而來(lái))和 CallableStatement(它從 PreparedStatement 繼承而來(lái))。
PreparedStatement中的SQL語(yǔ)句是可以帶參數(shù)的,避免了用字符串連接拼接SQL語(yǔ)句的麻煩和不 安全;當(dāng)批量處理SQL或頻繁執(zhí)行相同的查詢時(shí),PreparedStatement有明顯的性能上的優(yōu)勢(shì),由于數(shù)據(jù)庫(kù)可以將編譯優(yōu)化后的SQL語(yǔ)句緩 存起來(lái),下次執(zhí)行相同結(jié)構(gòu)的語(yǔ)句時(shí)就會(huì)很快(不用再次編譯和生成執(zhí)行計(jì)劃)。
(二)實(shí)驗(yàn)總結(jié)
1、使用JDBC實(shí)現(xiàn)實(shí)驗(yàn)七的寵物商店
完成實(shí)驗(yàn)內(nèi)容,代碼上傳到碼云,注意,務(wù)必將創(chuàng)建數(shù)據(jù)庫(kù)的腳本文件隨項(xiàng)目文件一起上傳,在隨筆中分析程序設(shè)計(jì)思路,用PowerDesigner畫出類圖結(jié)構(gòu),并對(duì)完成實(shí)驗(yàn)內(nèi)容過(guò)程中遇到的問題、解決方案和思考等進(jìn)行歸納總結(jié),注意代碼中必須有必要的注釋。
格式如下:
- 程序設(shè)計(jì)思路:
1、先設(shè)計(jì)一個(gè)PetItem類,包含number、name、age、cno、price屬性,并寫出get、set方法。設(shè)計(jì)一個(gè)Administrator類,包含name、mi屬性,并寫出get、set方法,編寫一個(gè)驗(yàn)證方法。
2、設(shè)計(jì)一個(gè)JDBC類,方便AdminDao類往數(shù)據(jù)庫(kù)添加數(shù)據(jù)。
3、設(shè)計(jì)數(shù)據(jù)訪問AdminDao類,包含獲取所有數(shù)據(jù),添加數(shù)據(jù),刪除數(shù)據(jù)等方法。
4、設(shè)計(jì)服務(wù)AdminService類,包含查詢服務(wù),添加服務(wù),修改服務(wù),刪除服務(wù)等方法,查詢服務(wù)要調(diào)用AdminDao類的queryAllData()方法,獲取所有數(shù)據(jù)。
5、設(shè)計(jì)WelcomeFrame類,聲明一個(gè)圖片組件和一個(gè)按鈕組件,設(shè)計(jì)一個(gè)設(shè)置窗體的函數(shù),包括窗體大小、窗體位置、標(biāo)題。添加組件方法,包括按鈕組件,標(biāo)題組件。設(shè)計(jì)添加監(jiān)聽器方法。設(shè)計(jì)一個(gè)顯示管理員界面方法,讓它連接到下一個(gè)界面。
6、設(shè)計(jì)Adminis類,聲明一個(gè)按鈕、兩個(gè)標(biāo)簽,設(shè)計(jì)一個(gè)設(shè)置窗體的函數(shù),包括窗體大小、窗體位置、。添加組件方法,包括按鈕組件,標(biāo)題組件。設(shè)計(jì)添加監(jiān)聽器方法。設(shè)計(jì)一個(gè)顯示管理員界面方法,讓它連接到下一個(gè)界面。設(shè)計(jì)一個(gè)修改的方法調(diào)用Administrator類的驗(yàn)證方法。
7、設(shè)計(jì)系統(tǒng)管理界面, AdminDialog類,定義界面使用的組件,使用JTextField組件輸入文本,編寫構(gòu)造方法,初始化方法,添加組件,添加監(jiān)聽器,編寫查詢方法,調(diào)用adminService的查詢服務(wù),編寫添加方法,刪除方法,修改方法。
8、編寫工具類,方便WelcomeFrame類調(diào)用。
9、設(shè)計(jì)主方法,調(diào)用WelcomeFrame().setVisible(true),運(yùn)行項(xiàng)目。
類圖
(三)代碼托管
碼云commit歷史截圖
(四)學(xué)習(xí)進(jìn)度條
代碼行數(shù)(新增/累積)學(xué)習(xí)時(shí)間(新增/累積)本周學(xué)習(xí)內(nèi)容 目標(biāo) 5000行 300小時(shí) 第2-4周 100/100 20/20 學(xué)習(xí)了數(shù)組和方法 第5周 200/300 30/50 學(xué)習(xí)了String類和StringBuffer類 第6周 800/1100 40/90 學(xué)習(xí)了this、static關(guān)鍵字,Singleton模式 第八周 1200/1700 60/110 繼承和多態(tài),抽象方法 第九周 1500/2000 70/120 接口、工廠設(shè)計(jì)模式、包裝類、匿名內(nèi)部類、日期類、正則表達(dá)式 第十周 1900/2400 80/130 異常處理、泛型、集合 第十一周 2500/3000 100/150 用戶圖形界面、事件處理 第十二周 3000/3500 110/160 JDBC數(shù)據(jù)庫(kù)的鏈接
轉(zhuǎn)載于:https://www.cnblogs.com/LUCKY-1/p/6869822.html
總結(jié)
以上是生活随笔為你收集整理的《Java技术》第八次作业的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C字符串数组赋值
- 下一篇: Java之反射机制