秋霞电影网午夜鲁丝片无码,真人h视频免费观看视频,囯产av无码片毛片一级,免费夜色私人影院在线观看,亚洲美女综合香蕉片,亚洲aⅴ天堂av在线电影猫咪,日韩三级片网址入口

第7章-JSP中使用數(shù)據(jù)庫分析課件

上傳人:29 文檔編號(hào):253378155 上傳時(shí)間:2024-12-12 格式:PPT 頁數(shù):109 大?。?.71MB
收藏 版權(quán)申訴 舉報(bào) 下載
第7章-JSP中使用數(shù)據(jù)庫分析課件_第1頁
第1頁 / 共109頁
第7章-JSP中使用數(shù)據(jù)庫分析課件_第2頁
第2頁 / 共109頁
第7章-JSP中使用數(shù)據(jù)庫分析課件_第3頁
第3頁 / 共109頁

下載文檔到電腦,查找使用更方便

20 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《第7章-JSP中使用數(shù)據(jù)庫分析課件》由會(huì)員分享,可在線閱讀,更多相關(guān)《第7章-JSP中使用數(shù)據(jù)庫分析課件(109頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),*,,*,單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),*,,*,單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),*,,*,單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),*,,*,單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),*,,*,單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),*,,*,JSP,實(shí)用教程,(,第三版,),配

2、合,《JSP,實(shí)用教程,(,第三版,)》,例子源代碼一起使用,Power Point,制作 張躍平 耿祥義,第,7,章,JSP,中使用數(shù)據(jù)庫,JSP實(shí)用教程(第三版) 配合《JSP實(shí)用教程(第三版)》第,2024/12/12,2,,本章主要內(nèi)容,7.1 MySQL,數(shù)據(jù)庫管理系統(tǒng),7.2 JDBC,7.3,連接,MySQL,數(shù)據(jù)庫,7.4,查詢記錄,7.5,更新、添加與刪除記錄,7.6,用結(jié)果集操作數(shù)據(jù)庫中的表,7.7,預(yù)處理語句,7.8,事務(wù),7.9,分頁顯示記錄,7.10,常見數(shù)據(jù)庫連接,7.11,標(biāo)準(zhǔn)化考試,2023/9/142 本章主要內(nèi)容7.1 MySQL數(shù),20

3、24/12/12,3,§7.1 MySQL,數(shù)據(jù)庫管理系統(tǒng),MySQL,數(shù)據(jù)庫管理系統(tǒng),簡稱,MySQL,,是世界上最流行的開源數(shù)據(jù)庫管理系統(tǒng),其社區(qū)版(,MySQL Community Edition,)是世界上最流行的免費(fèi)下載的開源數(shù)據(jù)庫管理系統(tǒng)。,目前許多,Web,開發(fā)項(xiàng)目都選用,MySQL,,其主要原因是,MySQL,的社區(qū)版(,MySQL Community Edition,)性能卓越,滿足許多,Web,應(yīng)用已經(jīng)綽綽有余,而且,MySQL,的社區(qū)版是開源數(shù)據(jù)庫管理系統(tǒng)、可以降低軟件的開發(fā)和使用成本,.,2023/9/143§7.1 MySQL數(shù)據(jù)庫管理系統(tǒng),2024/12/12,4,

4、,1.,下載,,登錄,,后選擇導(dǎo)航條上的,products,,在出現(xiàn)的頁面的左側(cè)選擇“,MySQL Community Edition,”或在出現(xiàn)的頁面的右側(cè)選擇“下載,MySQL,社區(qū)版”。,如圖,7.1,所示意,。,7.1.1,下載、安裝與啟動(dòng),MySQL,2.,安裝,,將下載的,mysql-5.6.16-win32.zip,解壓縮到本地計(jì)算機(jī)即可,比如解壓縮到,D:\,。形成的安裝目錄結(jié)構(gòu),如圖,7.2,。,3,.,啟動(dòng),打開,MS-DOS,命令行窗口,進(jìn)入到,bin,目錄中,執(zhí)行,MySQL,安裝目錄的,bin,子目錄中的,mysqld.exe,文件,:,,即在命令行鍵入:,,mysq

5、ld,,或,mysqld -nt,,啟動(dòng),MySQL,數(shù)據(jù)庫服務(wù)器。啟動(dòng)成功,,MySQL,數(shù)據(jù)庫服務(wù)器將占用當(dāng)前,MS-DOS,窗口,,如圖,7.3,所示,。,2023/9/144 1.下載 登錄www.mysql.co,2024/12/12,5,7.1.2,建立數(shù)據(jù)庫,啟動(dòng),MySQL,數(shù)據(jù)庫服務(wù)器后,就可以建立數(shù)據(jù)庫,并在數(shù)據(jù)庫中創(chuàng)建表。,,可以下載圖形界面的,MySQL,管理工具,并使用該工具進(jìn)行創(chuàng)建數(shù)據(jù)庫、在數(shù)據(jù)庫中創(chuàng)建表等操作,,MySQL,管理工具有免費(fèi)的也有需要購買的。,,也可以使用,MySQL,提供的命令行工具進(jìn)行創(chuàng)建數(shù)據(jù)庫、在數(shù)據(jù)庫中創(chuàng)建表等操作,2023/9/145

6、7.1.2 建立數(shù)據(jù)庫 啟,2024/12/12,1,.使用,MySQL,管理工具,可以登錄:, for MySQL,出現(xiàn)如,圖,7.4,所示界面 。我們建立的連接名稱是,gengxiangyi,,用戶名取,root,,密碼是空,,MySQL,服務(wù)器占用的端口是,3306,,如,圖,7.5,。,(,2,)建立數(shù)據(jù)庫,在新建的連接(,gengxiangyi,)上單擊鼠標(biāo)右鍵,然后選擇“新建數(shù)據(jù)庫”,在彈出的新建數(shù)據(jù)庫對(duì)話框中輸入,選擇有關(guān)信息,.,如圖,7.6,所示,.,(,3,)創(chuàng)建表,在其“表”選擇項(xiàng)上單擊鼠標(biāo)右鍵,選擇“新建表”,將出現(xiàn)創(chuàng)建表的對(duì)話框。如圖,7.7,所示,以及,7

7、.8,所示,。,2023/9/14 1.使用MySQL管理工具可以登錄:h,2024/12/12,7,,2,.使用,MySQL,監(jiān)視器,MySQL,提供的監(jiān)視器(,MySQL monitor,),允許用戶使用命令行方式管理數(shù)據(jù)庫。如果讀者有比較好的數(shù)據(jù)庫知識(shí),特別是,SQL,語句的知識(shí),那么使用命令行方式管理,MySQL,數(shù)據(jù)庫也是很方便的,.,需要再打開一個(gè),MS-DOS,命令行窗口,并使用,MS-DOS,命令進(jìn)入到,bin,目錄中,然后使用默認(rèn)的,root,用戶啟動(dòng),MySQL,監(jiān)視器(在安裝,MySQL,時(shí),root,用戶是默認(rèn)的一個(gè)用戶,沒有密碼)。命令如下:,mysql –u ro

8、ot,如圖,7.9,所示,2023/9/147 2.使用MySQL監(jiān)視器,2024/12/12,8,,(1),創(chuàng)建數(shù)據(jù)庫,啟動(dòng),MySQL,監(jiān)視器后就可以使用,SQL,語句進(jìn)行創(chuàng)建數(shù)據(jù)庫、建表等操作。在,MS-DOS,命令行窗口輸入,SQL,語句需要用“,;,”號(hào)結(jié)束,,在編輯,SQL,語句的過程中可以使用,\c,終止當(dāng)前,SQL,語句的編輯。需要提醒的是,可以把一個(gè)完整的,SQL,語句命令分成幾行來輸入,最后用分號(hào)作結(jié)束標(biāo)志即可。,使用,MySQL,監(jiān)視器創(chuàng)建一個(gè)名字為,Book,的數(shù)據(jù)庫,在當(dāng)前,MySQL,監(jiān)視器占用的命令行窗口輸入創(chuàng)建數(shù)據(jù)庫的,SQL,語句:,create data

9、base Book;,(,如圖,7.10,所示意,),2023/9/148 (1) 創(chuàng)建數(shù)據(jù)庫 啟動(dòng),2024/12/12,9,,(2),為數(shù)據(jù)庫建表,首先進(jìn)入該數(shù)據(jù)庫,(,即使用數(shù)據(jù)庫,),:,,use Book,如圖,7.11,所示意,。,在數(shù)據(jù)庫,Book,建立一個(gè)名字為,bookList,表,:(,如圖,7.12),CREATE TABLE bookList (,ISBN varchar(100) not null ,,name varchar(100) CHARACTER SET gb2312,,price float ,,PRIMARY KEY (ISBN),);

10、,插入記錄的,SQL,語句:,(,如圖,7.13),insert into bookList values('7-302-01465-5',',高等數(shù)學(xué),',28.67);,,查詢記錄的,SQL,語句,(,圖,7.14),,select * from bookList;,2023/9/149 (2) 為數(shù)據(jù)庫建表 首先進(jìn)入該數(shù),2024/12/12,10,,(,3,)導(dǎo)入,.sql,文件中的,SQL,語句,可以事先將需要的,SQL,語句保存在一個(gè)擴(kuò)展名是,.sql,的文本文件中,然后在,MySQL,監(jiān)視器占用的命令行窗口使用,source,命令導(dǎo)入,.sql,的文本文件中的,SQL,語句,

11、.,drop table carList ;,create table carList(,number char(60) CHARACTER SET gb2312 not null,,name char(50) CHARACTER SET gb2312 ,,price float,,year date,,PRIMARY KEY(number),);,insert into carList values(',加,A89CQ8',',奔馳,','820000','2015-12-26');,insert into carList values(',洲,C12456',',寶馬,','620000'

12、,'2015-10-10');,select * from carList;,然后,在當(dāng)前,MySQL,監(jiān)視器占用的命令行窗口鍵入如下命令:,source d:/1000/group.sql,導(dǎo)入,SQL,語句,,,如圖,7.15,。,,group.sql,文本文件的內(nèi)容如下:,2023/9/1410 (3)導(dǎo)入.sql文件中的SQL語,2024/12/12,11,刪除數(shù)據(jù)庫的命令,:,drop database <,數(shù)據(jù)庫名,>,,例如:刪除名為,tiger,的數(shù)據(jù)庫:,drop database tiger;,刪除表的命令,:,drop table <,表名,>,,例如,使用,book,

13、數(shù)據(jù)庫后,執(zhí)行,drop table booklist;,將刪除,book,數(shù)據(jù)庫中的,bookList,表。,,(,4,)刪除數(shù)據(jù)庫或表,2023/9/1411刪除數(shù)據(jù)庫的命令:drop datab,2024/12/12,12,§7.2 JDBC,JDBC,(,Java DataBase Connectivity,)提供了訪問數(shù)據(jù)庫的,API,,即由一些,Java,類和接口組成,是,Java,運(yùn)行平臺(tái)的核心類庫中的一部分。在,JSP,中可以使用,JDBC,實(shí)現(xiàn)對(duì)數(shù)據(jù)庫中表的記錄的查詢、修改和刪除等操作。,如圖,7.16,所示意,我們經(jīng)常使用,JDBC,進(jìn)行如下的操作:,與一個(gè)數(shù)據(jù)庫建立連接。

14、,向已連接的數(shù)據(jù)庫發(fā)送,SQL,語句。,處理,SQL,語句返回的結(jié)果。,2023/9/1412§7.2 JDBC JDBC(J,2024/12/12,13,使用,JDBC-,數(shù)據(jù)庫驅(qū)動(dòng)程序方式和數(shù)據(jù)庫建立連接需要經(jīng)過,2,個(gè)步驟:,§,7.3,連接,MySQL,數(shù)據(jù)庫,加載,JDBC-,數(shù)據(jù)庫驅(qū)動(dòng)程序,和指定的數(shù)據(jù)庫建立連接,如圖,7.17,所示意,2023/9/1413 使用JDBC-數(shù)據(jù)庫驅(qū)動(dòng)程序,2024/12/12,14,教材下載的是,mysql-connector-java-5.1.28.zip,,將該,zip,文件解壓至硬盤,在解壓后的目錄下的,mysql-conne

15、ctor-java-5.1.28-bin.ja,r,文件就是連接,MySQL,數(shù)據(jù)庫的,JDBC-,數(shù)據(jù)庫驅(qū)動(dòng)程序。將該驅(qū)動(dòng)程序復(fù)制到,Tomcat,服務(wù)器所使用的,JDK,的擴(kuò)展目錄中(即,java_home,環(huán)境變量指定的,JDK,,見第,1,章的,1.2,),比如:,D:\jdk1.7\jre\lib\ext,或復(fù)制到,Tomcat,服務(wù)器安裝目錄的,\common\lib,文件夾中,比如:,D:\apache-tomcat-8.0.3\common\lib,,7.3.1,加載,JDBC-,數(shù)據(jù)庫驅(qū)動(dòng)程序,加載,MySQL,的,JDBC-,數(shù)據(jù)庫驅(qū)動(dòng)程序代碼如下:,try{,,Class

16、.forName("com.mysql.jdbc.Driver");,},catch(Exception e){},2023/9/1414 教材下載的是mysql-co,2024/12/12,15,為了能和,MySQL,數(shù)據(jù)庫服務(wù)器管理的數(shù)據(jù)庫建立連接,必須保證該,MySQL,數(shù)據(jù)庫服務(wù)器已經(jīng)啟動(dòng),如果沒有更改過,MySQL,數(shù)據(jù)庫服務(wù)器的配置,那么該數(shù)據(jù)庫服務(wù)器占用的端口是,3306,。假設(shè),MySQL,數(shù)據(jù)庫服務(wù)器所駐留的計(jì)算機(jī)的,IP,地址是,192.168.100.1,,7.3.2,建立連接,_1,使用,,Connection getConnection(String,Stri

17、ng,String),方法建立連接的代碼如下:,try{ String uri = ",jdbc:mysql:// 192.168.100.1:3306/warehouse,";,String user =",root,";,String password =",99,";,con = DriverManager.getConnection(uri,user,password);,},catch(SQLException e){,System.out.println(e);,},2023/9/1415 為了能和MySQL數(shù)據(jù)庫,2024/12/12,16,,7.3.2,建立連接,

18、_2,使用,Connection getConnection(String),方法建立連接的代碼如下:,try{,String uri =," jdbc:mysql://192.168.100.1:3306/warehouse?user=root,con = DriverManager.getConnection(uri);,},catch(SQLException e){,System.out.println(e);,},如果,root,用戶沒有設(shè)置密碼,那么將上述,uri,中的,&password=99,更改為:,&password=,,2023/9/1416 7.3.2建立連接_2 使

19、用,2024/12/12,17,,7.3.2,建立連接,_3,避免操作數(shù)據(jù)庫出現(xiàn)中文亂碼(細(xì)節(jié)見稍后的,7.3.3,),那么需要使用,Connection getConnection(String),方法建立連接,連接代碼是(假設(shè)用戶是,root,,其密碼是,99,):,String uri =,"jdbc:mysql://127.0.0.1/warehouse?"+,"user=root&password=99&,characterEncoding=gb2312,";,con = DriverManager.getConnection(uri);,用戶要和連接,MySQL,駐留在同一計(jì)算機(jī)上

20、,使用的,IP,地址可以是,127.0.0.1,或,localhost,。另外,由于,3306,是,MySQL,數(shù)據(jù)庫服務(wù)器的默認(rèn)端口號(hào),鏈接數(shù)據(jù)庫時(shí)允許應(yīng)用程序省略默認(rèn)的,3360,端口號(hào),.,2023/9/1417 7.3.2建立連接_3 避,2024/12/12,18,,7.3.3 MySQL,亂碼解決方案,_1,1,.?dāng)?shù)據(jù)庫和表使用支持中文的字符編碼,在創(chuàng)建數(shù)據(jù)庫時(shí)指定數(shù)據(jù)庫使用的字符編碼:,,create,數(shù)據(jù)庫名,CHARACTER SET,字符編碼,創(chuàng)建表時(shí),可以指定某個(gè)字段使用的字符編碼:,字段名 類型,CHARACTER SET,字符編碼,例如,:,create

21、people CHARACTER SET gb2312,create table myList (,id int,,name varchar(100) CHARACTER SET gb2312,,PRIMARY KEY (id),);,2023/9/1418 7.3.3 MySQL亂碼解決方案,2024/12/12,19,,7.3.3 MySQL,亂碼解決方案,_2,2,.連接數(shù)據(jù)庫支持中文編碼,JSP,中連接,MySQL,數(shù)據(jù)庫時(shí),需要使用,Connection getConnection(java.lang.String),方法建立連接,而且向該方法參數(shù)傳遞的字符串是:,“jdbc:m

22、ysql://,地址,/,數(shù)據(jù)庫,?user=,用戶,&password=,密碼,&,characterEncoding=gb2312,";,2023/9/1419 7.3.3 MySQL亂碼解決方案,2024/12/12,20,,例子,7_1,,例子,1,是一個(gè)簡單的,JSP,頁面,該頁面中的,Java,程序片代碼負(fù)責(zé)加載,JDBC-,驅(qū)動(dòng)程序,并連接到數(shù)據(jù)庫,warehouse,,查詢,product,表中全部記錄,(,見,7.1,節(jié)曾建立,的,warehouse,數(shù)據(jù)庫,),,頁面運(yùn)行效果如圖,7.18,。,2023/9/1420 例子7_1 例子1是一,2024/12/

23、12,21,§,7.4,查詢記錄,和數(shù)據(jù)庫建立連接后,就可以使用,JDBC,提供的,API,和數(shù)據(jù)庫交互信息。比如查詢、修改和更新數(shù)據(jù)庫中的表等。,JDBC,和數(shù)據(jù)庫表進(jìn)行交互的主要方式是使用,SQL,語句(其它方式見,7.8,節(jié)),,JDBC,提供的,API,可以將標(biāo)準(zhǔn)的,SQL,語句發(fā)送給數(shù)據(jù)庫,實(shí)現(xiàn)和數(shù)據(jù)庫的交互。,2023/9/1421§7.4 查詢記錄 和數(shù)據(jù)庫建,2024/12/12,22,,7.4.1,結(jié)果集與查詢,_1,1,.,SQL,查詢語句與結(jié)果集,讓連接對(duì)象,con,調(diào)用方法,createStatement(),創(chuàng)建這個(gè),SQL,語句對(duì)象:,try{ State

24、ment sql=con.createStatement();,},catch(SQLException e ){,System.out.println(e);,},對(duì)于,ResultSet,rs,=,sql,.executeQuery("SELECT * FROM product");,內(nèi)存的結(jié)果集對(duì)象,rs,的列數(shù)是,4,列,剛好和,product,的列數(shù)相同,.,2023/9/1422 7.4.1 結(jié)果集與查詢_11.S,2024/12/12,23,7.4.1,結(jié)果集與查詢,_2,對(duì)于,,ResultSet,rs,=,sql.executeQuery("SELECT name,pric

25、e FROM product");,,內(nèi)存的結(jié)果集對(duì)象,rs,只有兩列,第,1,列是,name,列、第,2,列是,price,列。,,ResultSet,結(jié)果集一次只能看到一個(gè)數(shù)據(jù)行,使用,next(),方法走到下一數(shù)據(jù)行,獲得一行數(shù)據(jù)后,,ResultSet,結(jié)果集可以使用,getXxx,方法獲得字段值,(,列值,),,將位置索引(第一列使用,1,,第二列使用,2,等等)或列名傳遞給,getXxx,方法的參數(shù)即可,2023/9/1423 7.4.1 結(jié)果集與查詢_2對(duì)于,2024/12/12,24,表,7.1 ResultSet,類的若干方法,2023/9/1424 表7.1 Res

26、ultSet類的,2024/12/12,25,7.4.1,結(jié)果集與查詢,_3,2,.結(jié)果集的列名與列的數(shù)目,程序查詢的時(shí)候。為了代碼更加容易維護(hù),希望知道數(shù)據(jù)庫表的字段(列)的名字以及表的字段的個(gè)數(shù),那么一個(gè)辦法是使用返回到程序中的結(jié)果集來獲取相關(guān)的信息。,假如結(jié)果集是,rs,(1),得到元數(shù)據(jù)對(duì)象,metaData,,ResultSetMetaData,metaData,=,rs,.getMetaData();,,(2),得到結(jié)果集的列的個(gè)數(shù),即共有幾列,,int columnCount =,metaData,.getColumnCount();,(3),結(jié)果集,rs,中的第,i,列的名字:

27、,,String columnName =,metaData,.getColumnName(i);,2023/9/1425 7.4.1 結(jié)果集與查詢_32.結(jié),2024/12/12,26,7.4.2,隨機(jī)查詢,_1,使用下述方法獲得一個(gè),Statement,對(duì)象:,Statement stmt=con.createStatement(int type,,int concurrency);,type,取值:,,ResultSet.TYPE_SCROLL_INSENSITIVE,或,,ResultSet.TYPE_SCROLL_SENSITIVE,,Concurrency,取值:,,Result

28、Set.CONCUR_READ_ONLY,或,,ResultSet.CONCUR_UPDATABLE,2023/9/1426 7.4.2 隨機(jī)查詢_1使用下述方,2024/12/12,27,7.4.2,隨機(jī)查詢,_2,根據(jù)參數(shù)的,type,、,concurrency,的取值情況,,stmt,返回相應(yīng)類型的結(jié)果集:,ResultSet re=stmt.executeQuery(SQL,語句,);,滾動(dòng)查詢經(jīng)常用到,ResultSet,的下述方法:,public void first(),:將游標(biāo)移到結(jié)果集的第一行。,public void last(),:將游標(biāo)移到結(jié)果集的最后一行。,publ

29、ic int getRow(),:得到當(dāng)前游標(biāo)所指行的行號(hào),行號(hào)從,1,開始,如果結(jié)果集沒有行,返回,0,public boolean absolute(int row),:將游標(biāo)移到參數(shù),row,指定的行號(hào)。,2023/9/1427 7.4.2 隨機(jī)查詢_2 根據(jù),2024/12/12,,7.4.3,條件查詢,,"select… from,表,,where,字段 滿足的條件,",例如:,,"select * from product where price > 2000 and price<5000","select * from product where name = 'java'

30、","select * from product where name like '%,里,% ",2023/9/14 7.4.3 條件查詢"select…,2024/12/12,29,,例子,7_2,例子,2,使用,MVC,模式(有關(guān)知識(shí)見第,6,章)顯示,warehouse,數(shù)據(jù)庫,product,表中,price,字段值大于某個(gè)值的記錄。,2023/9/1429 例子7_2 例子2使用,2024/12/12,30,,例子,7_2,中的,web.xml,根據(jù)例子,2,中使用的,servlet,的名字及相關(guān)類,,Web,服務(wù)目錄,ch7,的,WEB-INF,下的,web.x

31、ml,文件需包含如下內(nèi)容(有關(guān),web.xml,文件的編輯與保存,見,5.1.2,),。,,queryByConditionServlet,myservlet.control.Example7_2_Servlet,,,queryByConditionServlet,/queryByConditionServlet,,2023/9/1430 例子7_2中的web.xml,2024/12/12,31,,例子,7_2,中的模型,模型(,Javabean,),Javabean,模型,Example7_2_Bean.java,負(fù)責(zé)存儲(chǔ)查詢到的記錄,在本例子中,Example7_2_Bean,創(chuàng)建的,Ja

32、vabean,模型的,id,是,resultBean,,,scope,取值是,request,。,2023/9/1431 例子7_2中的模型 模型(Ja,2024/12/12,32,,例子,7_2,中的,視圖(,JSP,頁面),視圖(,JSP,頁面),,視圖部分由,2,個(gè),JSP,頁面構(gòu)成,其中,example7_2.jsp,頁面負(fù)責(zé)提供輸入數(shù)據(jù)的視圖,即用戶可以在該頁面輸入查詢的價(jià)格條件,然后將數(shù)據(jù)提交給名字是,queryByConditionServlet,的,servlet,。,queryByConditionServlet,負(fù)責(zé)查詢數(shù)據(jù)庫,并將結(jié)果存儲(chǔ)到,id,為,resultB

33、ean,的,Javabean,數(shù)據(jù)模型中,然后請(qǐng)求視圖中的,showRecord.jsp,顯示數(shù)據(jù)模型,resultBean,中的數(shù)據(jù)。,example7_2.jsp,和,showRecord.jsp,的效果,如圖,7.19(a),和,圖,7.19(b),所示,2023/9/1432 例子7_2中的視圖(JSP頁面)視圖,2024/12/12,33,,例子,7_2,中的控制器,控制器(,servlet,),Example7_2_Sevlet,負(fù)責(zé)創(chuàng)建名字是,queryByConditionServlet,的,servlet,(見例子,2,前面,web.xml,文件的有關(guān)內(nèi)容)。,,queryB

34、yConditionServlet,查詢,warehouse,數(shù)據(jù)庫的,product,表中滿足價(jià)格條件的記錄,將結(jié)果存放到,id,是,resultBean,的,Javabean,數(shù)據(jù)模型中,,,然后用轉(zhuǎn)發(fā)的方法請(qǐng)求,showRecord.jsp,顯示,resultBean,中的數(shù)據(jù),。,2023/9/1433 例子7_2中的控制器控制器(serv,2024/12/12,34,§7.5,更新、添加與刪除記錄,1,.更新,Statement,對(duì)象調(diào)用方法:,public int executeUpdate,(,String sqlStatement,),;,實(shí)現(xiàn)對(duì)數(shù)據(jù)庫表中記錄的字段值的更新。例

35、如,,executeUpdate("UPDATE product SET price = 6866 WHERE name=',海爾電視機(jī),'");,2,.添加,Statement,對(duì)象調(diào)用方法:,public int executeUpdate,(,String sqlStatement,),;,實(shí)現(xiàn)向數(shù)據(jù)庫表中添加新的記錄。例如,,executeUpdate("INSERT INTO students VALUES ('012',',神通手機(jī)’,,'2015-2-26',2687)");,3,.刪除,Statement,對(duì)象調(diào)用方法:,public int executeUpdate,(,S

36、tring sqlStatement,),;,刪除數(shù)據(jù)庫表中的記錄。例如:,executeUpdate("DELETE FROM product WHERE number = '888' ");,2023/9/1434§7.5 更新、添加與刪除記錄1.更新,2024/12/12,35,例子,7_3,下面的例子,3,使用,MVC,模式(有關(guān)知識(shí)見第,6,章)向,warehouse,數(shù)據(jù)庫,product,表中插入錄,。,2023/9/1435 例子7_3 下面的例子3使,2024/12/12,36,,例子,7_3,中的,web.xml,根據(jù)例子,3,中使用的,servlet,的名字及

37、相關(guān)類,,Web,服務(wù)目錄,ch7,的,WEB-INF,下的,web.xml,文件需包含如下內(nèi)容(有關(guān),web.xml,文件的編輯與保存,見,5.1.2,):,,insertServlet,myservlet.control.Example7_3_Servlet,,,insertServlet,/insertServlet,,2023/9/1436 例子7_3中的web.xml,2024/12/12,37,,例子,7_3,中的模型,模型(,Javabean,),Javabean,模型例子,2,中的,Example7_2_Bean.java,完全相同,創(chuàng)建的,Javabean,模型的,id,是,

38、resultBean,,,scope,取值是,request,。,2023/9/1437 例子7_3中的模型 模型(Ja,2024/12/12,38,,例子,7_3,中的,視圖(,JSP,頁面),視圖(,JSP,頁面),,視圖部分由,2,個(gè),JSP,頁面構(gòu)成,一個(gè)是,example7_3.jsp,,另一個(gè)是例子,2,中的,showRecord.jsp,,其中,example7_3.jsp,頁面負(fù)責(zé)提供輸入新記錄提交給名字是,insertServlet,的,servlet,。,,insertServlet,負(fù)責(zé)將記錄插入到數(shù)據(jù)庫的表中,然后查詢數(shù)據(jù)庫的表,并將查詢結(jié)果存儲(chǔ)到,id,為,re

39、sultBean,的,Javabean,數(shù)據(jù)模型,中,然后請(qǐng)求視圖中的,showRecor.jsp,顯示數(shù)據(jù)模型,resultBean,中的數(shù)據(jù)。,example7_3.jsp,和,showRecord.jsp,的效果,如圖,7.20(a),和,圖,7.20(b),所示。,2023/9/1438 例子7_3中的視圖(JSP頁面)視圖,2024/12/12,39,,例子,7_3,中的控制器,控制器(,servlet,),Example7_3_Sevlet,負(fù)責(zé)創(chuàng)建名字是,insertServlet,的,servlet,(見例子,3,前面,web.xml,文件的有關(guān)內(nèi)容)。,insertServl

40、et,負(fù)責(zé)向數(shù)據(jù)庫,warehouse,的,product,表插入記錄,并查詢,product,表中的全部記錄,將結(jié)果存放到,id,是,resultBean,的,Javabean,數(shù)據(jù)模型,中,然后用轉(zhuǎn)發(fā)的方法請(qǐng)求,showRecod.jsp,顯示,resultBean,中的數(shù)據(jù)。,為了避免出現(xiàn)中文亂碼,數(shù)據(jù)庫的連接方式采用,:,“jdbc:mysql://,地址,/,數(shù)據(jù)庫,?user=,用戶,&password=,密碼,,2023/9/1439 例子7_3中的控制器控制器(serv,2024/12/12,40,§7.6,用結(jié)果集操作數(shù)據(jù)庫中的表,盡管可以用,SQL,語句對(duì)數(shù)據(jù)庫中表進(jìn)行更新

41、、插入操作,但也可以使用內(nèi)存中,ResultSet,結(jié)果集對(duì)底層數(shù)據(jù)庫表進(jìn)行更新和插入操作(這些操作由系統(tǒng)自動(dòng)轉(zhuǎn)化為相應(yīng)的,SQL,語句),優(yōu)點(diǎn)是不必熟悉有關(guān)更新、插入的,SQL,語句,而且方便編寫代碼,缺點(diǎn)是,必須要事先返回結(jié)果集。,2023/9/1440§7.6用結(jié)果集操作數(shù)據(jù)庫中的表,7.6.1,更新記錄,2024/12/12,41,使用結(jié)果集更新數(shù)據(jù)庫表中第,n,行記錄中某列的值的步驟是:,1.,結(jié)果集,rs,的游標(biāo)移動(dòng)到第,n,行,rs.absolute(n);,2.,結(jié)果集將第,n,行的某列的列值更新,例如 更新列名是,columnName,的日期值是,x,指定的值:,updat

42、eDate(String columnName, Date x),3.,更新數(shù)據(jù)庫中的表,最后,結(jié)果集調(diào)用,updateRow(),方法用結(jié)果集中的第,n,行更新數(shù)據(jù)庫表中的第,n,行記錄。,以下代碼片段更新,product,表中的第,3,行記錄的,name,列(字段)的值。,rs.absolute(3);,rs.updateString("name", "IBM PC");,rs.updateRow();,7.6.1 更新記錄2023/9/1441使用結(jié)果集更新數(shù),7.6.2,插入記錄,2024/12/12,42,使用結(jié)果集向數(shù)據(jù)庫表中插入(添加)一行記錄步驟是,:,1.,結(jié)果集,rs,的游

43、標(biāo)移動(dòng)到插入行,,rs.moveToInsertRow();,2.,更新插入行的列值,例如:,rs.updateString(1, "c002");,rs.updateString(2, "IBM iPad");,rs.updateDate(3,Date());,rs.updateDouble(4, 5356);,3.,插入記錄,最后,結(jié)果集調(diào)用,insertRow(),方法用結(jié)果集中的插入行向數(shù)據(jù)庫表中插入一行新記錄。,7.6.2 插入記錄2023/9/1442使用結(jié)果集向數(shù)據(jù),2024/12/12,43,例子,7_4,下面的例子,4,使用,MVC,模式(有關(guān)知識(shí)見第,6,章)向,wareh

44、ouse,數(shù)據(jù)庫,product,表中插入錄,但和前面的例子,3,不同的是,例子,4,不直接使用,SQL,語句,而是使用結(jié)果集操作數(shù)據(jù)庫中的表。,2023/9/1443 例子7_4 下面的例子4使用,2024/12/12,44,,例子,7_4,中的,web.xml,根據(jù)例子,4,中使用的,servlet,的名字及相關(guān)類,,Web,服務(wù)目錄,ch7,的,WEB-INF,下的,web.xml,文件需包含如下內(nèi)容(有關(guān),web.xml,文件的編輯與保存,見,5.1.2,),:,,insertBySetServlet,myservlet.control.Example7_4_Servlet,,

45、,insertBySetServlet,/insertBySetServlet,,2023/9/1444 例子7_4中的web.xml,2024/12/12,45,,例子,7_4,中的模型,,模型(,Javabean,),Javabean,模型與例子,2,中的,Example7_2_Bean.java,完全相同,創(chuàng)建的,Javabean,模型的,id,是,resultBean,,,scope,取值是,request,。,2023/9/1445 例子7_4中的模型 模型(Ja,2024/12/12,46,,例子,7_4,中的,視圖(,JSP,頁面),視圖(,JSP,頁面),,視圖部分由,2

46、,個(gè),JSP,頁面構(gòu)成,一個(gè)是,example7_4.jsp,,另一個(gè)是例子,2,中的,showRecord.jsp,。,,其中,example7_4.jsp,頁面負(fù)責(zé)提供輸入新記錄的視圖,即用戶可以在該頁面輸入要添加的記錄,然后將要添加的記錄提交給名字是,insertBySetServlet,的,servlet,。,,insertBySetServlet,負(fù)責(zé)將記錄插入到數(shù)據(jù)庫的表中,然后查詢數(shù)據(jù)庫的表,并將查詢結(jié)果存儲(chǔ)到,id,為,resultBean,的,Javabean,數(shù)據(jù)模型中,然后請(qǐng)求視圖中的,showRecor.jsp,顯示數(shù)據(jù)模型,resultBean,中的數(shù)據(jù)。,examp

47、le7_4.jsp,和,showRecord.jsp,的效果如,圖,7.21(a),和圖,7.21(b),所示。,2023/9/1446 例子7_4中的視圖(JSP頁面)視圖,2024/12/12,47,,例子,7_4,中的控制器,控制器(,servlet,),,Example7_4_Sevlet,負(fù)責(zé)創(chuàng)建名字是,insertBySetServlet,的,servlet,(見例子,4,前面,web.xml,文件的有關(guān)內(nèi)容)。,insertBySetServlet,使用結(jié)果集操作數(shù)據(jù)庫,并向數(shù)據(jù)庫,warehouse,的,product,表插入記錄,然后查詢,product,表中的全部記錄,將結(jié)

48、果存放到,id,是,resultBean,的,Javabean,數(shù)據(jù)模型中,然后用轉(zhuǎn)發(fā)的方法請(qǐng)求,showRecod.jsp,顯示,resultBean,中的數(shù)據(jù),.,為了,避免出現(xiàn)中文亂碼,數(shù)據(jù)庫的連接方式采用,:,"jdbc:mysql://,地址,/,數(shù)據(jù)庫,?user=,用戶,&password=,密碼,,2023/9/1447 例子7_4中的控制器控制器(serv,2024/12/12,48,§7.7,預(yù)處理語句,Java,提供了更高效率的數(shù)據(jù)庫操作機(jī)制,就是,PreparedStatement,對(duì)象,該對(duì)象被習(xí)慣地稱作預(yù)處理語句對(duì)象。本節(jié)學(xué)習(xí)怎樣使用預(yù)處理語句對(duì)象操作數(shù)據(jù)庫中的表。

49、,2023/9/1448§7.7 預(yù)處理語句 Jav,7.7.1,預(yù)處理語句優(yōu)點(diǎn),2024/12/12,49,Connection,連接對(duì)象,con,調(diào)用,prepareStatement(String sql),方法:,PreparedStatement pre=con.prepareStatement(String sql);,對(duì)參數(shù),sql,指定的,SQL,語句進(jìn)行預(yù)編譯處理,.,那么,pre,調(diào)用下列方法都可以使得該底層內(nèi)部命令被 數(shù)據(jù)庫執(zhí)行:,ResultSet executeQuery(),boolean execute(),int executeUpdate(),只

50、要編譯好了,PreparedStatement,對(duì)象,pre,,那么,pre,可以隨時(shí)地執(zhí)行上述方法,提高了訪問數(shù)據(jù)庫的速度。,7.7.1 預(yù)處理語句優(yōu)點(diǎn)2023/9/1449 Co,2024/12/12,50,例子,7_5,在下面的例,5,使用預(yù)處理語句來查詢,warehouse,數(shù)據(jù)庫中,product,表的全部記錄(有關(guān),product,表見,7.1.2,節(jié)),請(qǐng)讀者比較,例子,5,和,例子,1,的不同之處,2023/9/1450 例子7_5 在下面的例5,2024/12/12,51,7.7.2,使用通配符,在對(duì),SQL,進(jìn)行預(yù)處理時(shí)可以使用通配符“?”來代替字段的值。例如

51、:,prepareStatement pre=,con.prepareStatement("SELECT * FROM product WHERE price <,?,");,先調(diào)用相應(yīng)的方法設(shè)置通配符“?”代表的具體值,比如:,pre.setDouble(1,6565);,指定上述預(yù)處理語句,pre,中第,1,個(gè)通配符“,?,”代表的值是,6565,。,通配符按著它們?cè)陬A(yù)處理的“,SQL,語句”中從左至右依次出現(xiàn)的順序分別被稱做第,1,個(gè)、第,2,個(gè),…,第,m,個(gè)通配符。,預(yù)處理語句設(shè)置通配符“?”的值的常用方法有:,void setDate(int parameterIndex,Date

52、 x),void setDouble(int parameterIndex,double x),void setFloat(int parameterIndex,float x),2023/9/1451 7.7.2 使用通配符在對(duì)SQL進(jìn),2024/12/12,52,例子,7_6,例子,6,使用,MVC,模式(有關(guān)知識(shí)見第,6,章)更新,warehouse,數(shù)據(jù)庫,product,表中的記錄,但和前面的例子不同的是,這里使用了預(yù)處理語句,。,2023/9/1452 例子7_6 例子6使用M,2024/12/12,53,,例子,7_6,中的,web.xml,根據(jù)例子,6,中使用的,

53、servlet,的名字及相關(guān)類,,Web,服務(wù)目錄,ch7,的,WEB-INF,下的,web.xml,文件需包含如下內(nèi)容(有關(guān),web.xml,文件的編輯與保存,見,5.1.2,):,,preparedServlet,myservlet.control.Example7_6_Servlet,,,preparedServlet,/preparedServlet,,2023/9/1453 例子7_6中的web.xml,2024/12/12,54,,例子,7_6,中的模型,模型(,Javabean,),Javabean,模型與例子,2,中的,Example7_2_Bean.java,完全相同,創(chuàng)建的

54、,Javabean,模型的,id,是,resultBean,,,scope,取值是,request,。,2023/9/1454 例子7_6中的模型 模型(Ja,2024/12/12,55,,例子,7_6,中的,(,JSP,頁面),視圖(,JSP,頁面),,視圖部分由,2,個(gè),JSP,頁面構(gòu)成,一個(gè)是,example7_6.jsp,,另一個(gè)是例子,2,中的,showRecord.jsp,(showRecod.jsp,的代碼見例子,2,的視圖部分,),。,example7_6.jsp,頁面將要更新的記錄,提交給名字是,preparedServlet,的,servlet,。,preparedS

55、ervlet,負(fù)責(zé)更新數(shù)據(jù)庫表中的記錄,然后查詢數(shù)據(jù)庫的表,并將查詢結(jié)果存儲(chǔ)到,id,為,resultBean,的,Javabean,數(shù)據(jù)模型中,然后請(qǐng)求視圖中的,showRecor.jsp,(見例子,2,中的視圖部分)顯示數(shù)據(jù)模型,resultBean,中的數(shù)據(jù)。,example7_6.jsp,和,showRecord.jsp,的效果如圖,7.22(a),和圖,7.22(b),所示,2023/9/1455 例子7_6中的(JSP頁面)視圖(J,2024/12/12,56,,例子,7_6,中的控,視圖,制器,控制器(,servlet,),,Example7_6_Servlet,負(fù)責(zé)創(chuàng)建名字是,

56、insertServlet,的,servlet,(見例子,3,前面,web.xml,文件的有關(guān)內(nèi)容)。,insertServlet,負(fù)責(zé)向數(shù)據(jù)庫,warehouse,的,product,表插入記錄,并查詢,product,表中的全部記錄,將結(jié)果存放到,id,是,resultBean,的,Javabean,數(shù)據(jù)模型,中,然后用轉(zhuǎn)發(fā)的方法請(qǐng)求,showRecod.jsp,顯示,resultBean,中的數(shù)據(jù)。,為了避免出現(xiàn)中文亂碼,數(shù)據(jù)庫的連接方式采用,:,“jdbc:mysql://,地址,/,數(shù)據(jù)庫,?user=,用戶,&password=,密碼,,2023/9/1456 例子7_6中的控視圖

57、制器控制器(se,2024/12/12,57,§7.8,事務(wù),事務(wù)由一組,SQL,語句組成,所謂“事務(wù)處理”是指:應(yīng)用程序保證事務(wù)中的,SQL,語句要么全部都執(zhí)行,要么一個(gè)都不執(zhí)行。,事務(wù)處理步驟如下:,1,.連接對(duì)象使用,setAutoCommit(boolean autoCommit),方法,將參數(shù),autoCommit,取值為,false,來關(guān)閉自動(dòng)提交模式:,con.setAutoCommit(false);,2,.,commit(),方法,con,調(diào)用,commit(),方法就是讓事務(wù)中的,SQL,語句全部生效。,3,.,rollback(),方法,只要事務(wù)中任何一個(gè),SQL,語句沒

58、有生效,,,就拋出,SQLException,異常。在處理,SQLException,異常時(shí),,,必須讓,con,調(diào)用,rollback(),方法,,,其作用是撤消事務(wù)中成功執(zhí)行過的,SQL,語句對(duì)數(shù)據(jù)庫數(shù)據(jù)所做的更新、插入或刪除操作,.,2023/9/1457§7.8 事務(wù) 事務(wù)由一組SQ,2024/12/12,58,例子,7_7,為了,例子,7,的需要,我們?cè)?bank,數(shù)據(jù)庫中創(chuàng)建了表,user,表,,,表的字段及屬性如下:,name(,文本,) userMoney(,雙精度型,),例子,7,使用了事務(wù)處理,,,將,user,表中,name,字段是,geng,的,userMon

59、ey,的值減少,50,,并將減少的,50,增加到,name,字段是,zhang,的,userMony,屬性值上。運(yùn)行效果,如圖,7.23,.,2023/9/1458 例子7_7 為了例子7的需,2024/12/12,59,§,7.9,分頁顯示記錄,可以使用二維數(shù)組,table,存放表的記錄,即用二維數(shù)組,table,中的行(一維數(shù)組,table[i],)存放一條記錄。,假設(shè),table,存放了,m,行記錄,準(zhǔn)備每頁顯示,n,行,那么,總頁數(shù)的計(jì)算公式:,如果,m,除以,n,的余數(shù)大于,0,,總頁數(shù)等于,m,除以,n,的商加,1,;,如果,m,除以,n,的余數(shù)等于,0,,總頁數(shù)等于,m

60、,除以,n,的商。,總頁數(shù),=(m%n)==0?(m/n):(m/n+1);,,如果準(zhǔn)備顯示第,p,頁的內(nèi)容,應(yīng)當(dāng)從,tablel,第,(p-1)*n,行開始,連續(xù)輸出,n,行,(最后一頁可能不足,n,行)。,2023/9/1459§7.9 分頁顯示記錄 可以,2024/12/12,60,例子,7_8,下面的例子,8,使用,MVC,模式(有關(guān)知識(shí)見第,6,章)分頁顯示,warehouse,數(shù)據(jù)庫,product,表中的記錄。,2023/9/1460 例子7_8 下面的例子8使用,2024/12/12,61,,例子,7_8,中的,web.xml,根據(jù)例子,8,中使用的,serv

61、let,的名字及相關(guān)類,,Web,服務(wù)目錄,ch7,的,WEB-INF,下的,web.xml,文件需包含如下內(nèi)容(有關(guān),web.xml,文件的編輯與保存,見,5.1.2,):,,queryAllServlet,myservlet.control.Example7_8_Servlet,,,queryAllServlet,/queryAllServlet,,2023/9/1461 例子7_8中的web.xml,2024/12/12,62,,例子,7_8,中的模型,,模型(,Javabean,),Javabean,模型的,id,是,pageBean,(,Example7_8_Bean,創(chuàng)建,),生命

62、周期是,session,,用于存儲(chǔ)數(shù)據(jù)庫中的記錄。,2023/9/1462 例子7_8中的模型 模型(Ja,2024/12/12,63,,例子,7_8,中的,視圖(,JSP,頁面),視圖(,JSP,頁面),,視圖部分由,2,個(gè),JSP,頁面構(gòu)成,其中,example7_8.jsp,頁面負(fù)責(zé)提供輸入數(shù)據(jù)的視圖,即用戶可以在該頁面輸入數(shù)據(jù)庫的名、表名、密碼等信息,然后提交給名字是,queryAllServlet,的,servlet,。,queryAllServlet,負(fù)責(zé)查詢數(shù)據(jù)庫,并將結(jié)果存儲(chǔ)到,id,為,pageBean,的,Javabean,數(shù)據(jù)模型中,然后請(qǐng)求視圖中的,example

63、7_8_pageShow.jsp,頁面負(fù)責(zé)分頁顯示,pageBean,的數(shù)據(jù)。,example7_8.jsp,和,example7_8_pageShow.jsp,的效果如圖,7.24(a),和圖,7.24(b),所示。,2023/9/1463 例子7_8中的視圖(JSP頁面)視圖,2024/12/12,64,,例子,7_8,中的控制器,控制器(,servlet,),Example7_8_Servle,t,負(fù)責(zé)創(chuàng)建名字是,queryAllServlet,的,servlet,(見例子,8,前面,web.xml,文件的有關(guān)內(nèi)容)。,queryAllServlet,查詢數(shù)據(jù)庫表中的全部記錄,將結(jié)果存放

64、到,id,是,pageBean,的,Javabean,數(shù)據(jù)模型中,然后用轉(zhuǎn)發(fā)的方法請(qǐng)求,example7_8_pageShow.jsp,顯示,pageBean,中的數(shù)據(jù)。,2023/9/1464 例子7_8中的控制器控制器(serv,2024/12/12,65,§,7.10,常見數(shù)據(jù)庫連接,7.10.,1 .,連接,Microsoft SQL Server,數(shù)據(jù)庫,try { Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");,},catch(Exception e){,},try{ String uri=,"jdbc

65、:sqlserver://192.168.100.1:1433;DatabaseName=warehouse";,String user="sa";,String password="dog123456";,con=DriverManager.getConnection(uri,user,password);,},catch(SQLException e){,System.out.println(e);,},2023/9/1465§7.10 常見數(shù)據(jù)庫連接 7.1,2024/12/12,66,7.10.2,連接,Oracle,數(shù)據(jù)庫,Class.forName("oracle.jdbc.d

66、river.OracleDriver").newInstance();,Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();,Connection con=,DriverManager.getConnection( "jdbc:oracle:thin:@,主機(jī),:,端口號(hào),:,數(shù)據(jù)庫名,",",用戶名,",",密碼,");,例如:,String user="scott";,String password="tiger";,con = DriverManager.getConnection,("jdbc:oracle:thin:@192.168.96.1:1521:oracle9i",user,password);,2023/9/1466 7.10.2 連接Oracle,2024/12/1

展開閱讀全文
溫馨提示:
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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  sobing.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!