版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、廣州中醫(yī)藥大學(xué)醫(yī)學(xué)信息工程學(xué)院實(shí) 驗(yàn) 報(bào) 告課程名稱:網(wǎng)絡(luò)數(shù)據(jù)庫編程專業(yè)班級(jí):計(jì)算機(jī)科學(xué)與技術(shù)(2010)級(jí)學(xué)生學(xué)號(hào):2010081126學(xué)生姓名:呂呂實(shí)驗(yàn)名稱:實(shí)驗(yàn)成績:課程類別:必修 限選 公選 其它實(shí)驗(yàn)三 使用jdbc實(shí)現(xiàn)數(shù)據(jù)庫連接實(shí)驗(yàn)類型:應(yīng)用性實(shí)驗(yàn) 實(shí)驗(yàn)日期: 2013.03.20 實(shí)驗(yàn)?zāi)康囊笸ㄟ^教學(xué),使學(xué)生掌握使用jdbc連接到數(shù)據(jù)庫的方法(如通過jdbc-odbc橋或pure java driver),能使用網(wǎng)頁表單實(shí)現(xiàn)網(wǎng)頁與數(shù)據(jù)庫的交互。實(shí)驗(yàn)內(nèi)容及步驟1、 在數(shù)據(jù)庫sql server中創(chuàng)建一個(gè)數(shù)據(jù)庫jdbctest,并創(chuàng)建表student_info,并設(shè)定字段,輸入內(nèi)容。2
2、、 使用jdbc-odbc實(shí)現(xiàn)數(shù)據(jù)庫連接a) 打開“控制面板”的“管理工具” 的“數(shù)據(jù)源 (odbc)”b) 建立數(shù)據(jù)源c) 選“系統(tǒng)數(shù)據(jù)源”,連接sql server數(shù)據(jù)庫d) 測(cè)試是否連接成功e) 通過以下類class、drivermanager、connection(連接數(shù)據(jù)庫用到的類),及statement、resultset(訪問數(shù)據(jù)庫用到的類)編寫代碼實(shí)現(xiàn)表student_info數(shù)據(jù)的查詢。f) 查詢結(jié)果在頁面中顯示。3、 使用pure java driver實(shí)現(xiàn)數(shù)據(jù)庫連接(本題可以做可以不做)a) 安裝sql-jdbc,如裝在d盤b) 設(shè)置環(huán)境變量classpath,添加d:s
3、qljdbcmsbase.jar; d:sqljdbcmsutil.jar; d:sqljdbcmssqlserver.jar;c) 設(shè)sql server數(shù)據(jù)庫用windows和數(shù)據(jù)庫混合身分驗(yàn)證的方式。d) 通過以下類class、drivermanager、connection(連接數(shù)據(jù)庫用到的類),及statement、resultset(訪問數(shù)據(jù)庫用到的類)編寫代碼實(shí)現(xiàn)表student_info數(shù)據(jù)的查詢。e) 查詢結(jié)果在頁面中顯示。4、 通過表單傳遞數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)庫的插入、刪除與更新操作,并顯示插入結(jié)果。5、 熟悉jsp中各種常用的內(nèi)建對(duì)象如request對(duì)象、session對(duì)象、a
4、pplication對(duì)象的使用。6、 熟悉各種表單的處理的方法:如選擇按鈕的使用、多選方塊的使用、群組檢查的使用、隱藏欄位的使用、在客戶端進(jìn)行數(shù)據(jù)檢查7、 試?yán)蒙鲜鲋R(shí)實(shí)現(xiàn)一個(gè)留言板系統(tǒng)。以下需要同學(xué)們貼上第7題經(jīng)調(diào)試好代碼:數(shù)據(jù)庫對(duì)應(yīng)的表1答:本人在mysql數(shù)據(jù)庫中建立了數(shù)據(jù)庫jsp-experiment,再建立兩個(gè)表,一為表studentinfo,存放學(xué)生的基本信息,另一個(gè)表為message,用來存放學(xué)生的留言記錄,截圖如下:數(shù)據(jù)庫:jsp-experiment表studentinfo:表message:留言板實(shí)現(xiàn)步驟和代碼:1.用戶登錄用到userlogin.jsp文件,代碼為:登錄
5、用戶登錄用戶名: 密 碼: !- 界面截圖:2.連接數(shù)據(jù)庫進(jìn)行用戶合法性檢查,用到verifylogin.jsp文件,若用戶存在,則跳轉(zhuǎn)到留言界面,代碼如下:登錄!-3.進(jìn)入到留言界面后,進(jìn)行留言,用到messageboard.jsp文件,代碼為:function clear() document.getelementbyid(messagecontent).value=; 留言板body color: #0033ff;登錄成功用戶信息:姓名: 學(xué)號(hào):請(qǐng)輸入您的留言:!-/-界面截圖:4.留言成功后,將顯示留言的記錄,用到insertmessage1.jsp文件,代碼為: database%
6、/獲取用戶名 string susername =(string)request.getsession().getattribute(sessionname); /獲取密碼 string spasswd =(string)request.getsession().getattribute(sessionpwd); /獲取留言 string message= request.getparameter (messagecontent); string url=jdbc:mysql:/localhost/jsp-experiment; string user =root;/這里替換成你自已的數(shù)據(jù)庫用
7、戶名 string password = 123;/這里替換成你自已的數(shù)據(jù)庫用戶密碼 /string sqlstr = select * from message where studentno=2010081126; /string sqlstr = select * from studentinfo; string sql = insert into message(studentno,messagetime,message) values (+spasswd+,now(),+message+); string sqlstr=select * from message where stud
8、entno=+spasswd+; try /這里的異常處理語句是必需的.否則不能通過編譯! class.forname(com.mysql.jdbc.driver); /out.println(com.mysql.jdbc.driver類實(shí)例化成功! ); /connection con = drivermanager.getconnection(url); connection con = drivermanager.getconnection(url,user,password); statement st = con.createstatement(); st.execute(sql);
9、 resultset rs = st.executequery(sqlstr); out.println(添加留言成功!); out.println(); out.println(您的留言記錄為:); out.println(); out.println(); /out.println(學(xué)號(hào)留言時(shí)間留言內(nèi)容); while (rs.next() string col1 = rs.getstring(studentno); string col2 = rs.getstring(messagetime); string col3= rs.getstring(message); /打印所顯示的數(shù)據(jù)
10、out.println(+col1+col2+col3+); out.println(); rs.close(); st.close(); con.close(); catch(exception err) err.printstacktrace(); out.print(); out.println(connecting to the database is error); %界面截圖:提交后:(以下為理論知識(shí)題)8、 jdbc的全稱是什么,在java的哪個(gè)包下?答:全稱為java data base connectivity,java數(shù)據(jù)庫連接,在java.sql里。9、jdbc連接數(shù)據(jù)庫
11、用到的類有哪些?答: 1. class/指定數(shù)據(jù)庫驅(qū)動(dòng)程序2. drivermanager/驅(qū)動(dòng)程序管理3. connection/數(shù)據(jù)庫連接10、比較jdbc數(shù)據(jù)庫連接的jdbc-odbc橋及pure java driver方式的優(yōu)缺點(diǎn)答;(1)jdbc-odbc bridge plus odbc driver優(yōu)點(diǎn):可以沿用舊系統(tǒng)的設(shè)置缺點(diǎn):設(shè)置odbc連接繁瑣,在jdbc與odbc中數(shù)據(jù)傳遞及轉(zhuǎn)換上需要一定的時(shí)間(2)pure java driver for database middleware優(yōu)點(diǎn):不用在用戶端做任何的設(shè)置或安裝一些函數(shù)庫,只需連接中間層服務(wù)器缺點(diǎn):連接受中間層服務(wù)器影
12、響11、statement與preparedstatement的作用與區(qū)別?寫一個(gè)程序?qū)嵗绾斡胮reparedstatement實(shí)現(xiàn)批處理? (將100條記錄插入預(yù)先設(shè)定好的數(shù)據(jù)庫中)答:1. preparedstatement是預(yù)編譯的,對(duì)于批量處理可以大大提高效率. 也叫jdbc存儲(chǔ)過程;2. 使用 statement 對(duì)象。在對(duì)數(shù)據(jù)庫只執(zhí)行一次性存取的時(shí)侯,用 statement 對(duì)象進(jìn)行處理。preparedstatement 對(duì)象的開銷比statement大,對(duì)于一次性操作并不會(huì)帶來額外的好處;3. statement每次執(zhí)行sql語句,相關(guān)數(shù)據(jù)庫都要執(zhí)行sql語句的編譯,prep
13、aredstatement是預(yù)編譯得, preparedstatement支持批處理。程序?qū)嵗簆ublic void exec3(connection conn) try conn.setautocommit(false); long begintime = system.currenttimemillis(); preparedstatement pst = conn.preparestatement(insert into t1(id) values(?); for(int i=1;i=100;i+) pst.setint(1, i); pst.addbatch(); if(i%50=0
14、) pst.executebatch(); mit(); pst.clearbatch(); pst.executebatch(); long endtime = system.currenttimemillis(); system.out.println(pst+batch用時(shí):+(endtime-begintime)+毫秒); pst.close(); conn.close(); catch (sqlexception e) e.printstacktrace(); 12、statement接口提供了三種執(zhí)行sql語句的方法,它們分別是什么? 答:查詢方法:executequery;更新方法:execut
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度年福建省高校教師資格證之高等教育心理學(xué)每日一練試卷A卷含答案
- 二年級(jí)數(shù)學(xué)計(jì)算題專項(xiàng)練習(xí)
- 地質(zhì)災(zāi)害治理施工組織設(shè)計(jì)方案
- 2024年新型防腐木建設(shè)協(xié)議范本
- 2024年委托管理權(quán)限規(guī)范協(xié)議細(xì)則
- 2024年新轎車租賃協(xié)議規(guī)范
- 2024年食品配送服務(wù)協(xié)議細(xì)則
- 2024年度品牌宣傳合作協(xié)議
- 觀察循證護(hù)理在ICU腦卒中患者床旁盲插螺旋形鼻腸管中的應(yīng)用
- 多人股權(quán)轉(zhuǎn)讓協(xié)議樣本:修訂
- 綠色食品、有機(jī)食品和無公害食品課件
- 擴(kuò)張型心肌病診斷和治療指南
- 電子小報(bào)社團(tuán)教案
- 八大特殊作業(yè)安全試題題庫
- 標(biāo)簽打印管理辦法及流程
- 五四制青島版2022-2023五年級(jí)科學(xué)上冊(cè)第五單元第19課《生物的棲息地》課件(定稿)
- DB65∕T 3253-2020 建筑消防設(shè)施質(zhì)量檢測(cè)評(píng)定規(guī)程
- 四年級(jí)上冊(cè)美術(shù)教案15《有創(chuàng)意的書》人教版
- 否定詞否定句課件(PPT 38頁)
- 水力學(xué)第12章 相似理論-2015
- 第7章國際資本流動(dòng)與國際金融危機(jī)
評(píng)論
0/150
提交評(píng)論