J2EE項(xiàng)目系列(四)--SSM框架構(gòu)建積分系統(tǒng)和基本商品檢索系統(tǒng)(Spring+SpringMVC+MyBatis)(3)Ajax使用詳解(級(jí)聯(lián)列表)以及企業(yè)級(jí)報(bào)表Excel導(dǎo)入導(dǎo)出實(shí)現(xiàn)_第1頁
J2EE項(xiàng)目系列(四)--SSM框架構(gòu)建積分系統(tǒng)和基本商品檢索系統(tǒng)(Spring+SpringMVC+MyBatis)(3)Ajax使用詳解(級(jí)聯(lián)列表)以及企業(yè)級(jí)報(bào)表Excel導(dǎo)入導(dǎo)出實(shí)現(xiàn)_第2頁
J2EE項(xiàng)目系列(四)--SSM框架構(gòu)建積分系統(tǒng)和基本商品檢索系統(tǒng)(Spring+SpringMVC+MyBatis)(3)Ajax使用詳解(級(jí)聯(lián)列表)以及企業(yè)級(jí)報(bào)表Excel導(dǎo)入導(dǎo)出實(shí)現(xiàn)_第3頁
J2EE項(xiàng)目系列(四)--SSM框架構(gòu)建積分系統(tǒng)和基本商品檢索系統(tǒng)(Spring+SpringMVC+MyBatis)(3)Ajax使用詳解(級(jí)聯(lián)列表)以及企業(yè)級(jí)報(bào)表Excel導(dǎo)入導(dǎo)出實(shí)現(xiàn)_第4頁
J2EE項(xiàng)目系列(四)--SSM框架構(gòu)建積分系統(tǒng)和基本商品檢索系統(tǒng)(Spring+SpringMVC+MyBatis)(3)Ajax使用詳解(級(jí)聯(lián)列表)以及企業(yè)級(jí)報(bào)表Excel導(dǎo)入導(dǎo)出實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、J2EE項(xiàng)目系列(四)-SSM框架構(gòu)建積分系統(tǒng)和基本商品檢索系統(tǒng)(Spring+SpringMVC+MyBatis)(3)Ajax使用詳解(級(jí)聯(lián)列表)以及企業(yè)級(jí)報(bào)表Excel導(dǎo)入導(dǎo)出實(shí)現(xiàn)一、Ajax使用詳解(級(jí)聯(lián)列表例子):(1)概述:AJAX 不是新的編程語言,而是一種使用現(xiàn)有標(biāo)準(zhǔn)的新方法。AJAX 最大的優(yōu)點(diǎn)是在不重新加載整個(gè)頁面的情況下,可以與服務(wù)器交換數(shù)據(jù)并更新部分網(wǎng)頁內(nèi)容。AJAX 不需要任何瀏覽器插件,但需要用戶允許JavaScript在瀏覽器上執(zhí)行。應(yīng)用:運(yùn)用XHTML+CSS來表達(dá)資訊;運(yùn)用JavaScript操作DOM(Document Object Model)來執(zhí)行動(dòng)態(tài)效

2、果;運(yùn)用XML和XSLT操作資料;運(yùn)用XMLHttpRequest或新的Fetch API與網(wǎng)頁服務(wù)器進(jìn)行異步資料交換;注意:AJAX與Flash、Silverlight和Java Applet等RIA技術(shù)是有區(qū)分的。不適用:部分簡單的表單搜索基本的導(dǎo)航替換大量的文本.對(duì)呈現(xiàn)的操縱缺點(diǎn):轉(zhuǎn)載自此1. AJAX干掉了Back和History功能,即對(duì)瀏覽器機(jī)制的破壞。在動(dòng)態(tài)更新頁面的情況下,用戶無法回到前一個(gè)頁面狀態(tài),因?yàn)闉g覽器僅能記憶歷史記錄中的靜態(tài)頁面。2. AJAX的安全問題。AJAX技術(shù)給用戶帶來很好的用戶體驗(yàn)的同時(shí)也對(duì)IT企業(yè)帶來了新的安全威脅,Ajax技術(shù)就如同對(duì)企業(yè)數(shù)據(jù)建立了一個(gè)直

3、接通道。這使得開發(fā)者在不經(jīng)意間會(huì)暴露比以前更多的數(shù)據(jù)和服務(wù)器邏輯。Ajax的邏輯可以對(duì)客戶端的安全掃描技術(shù)隱藏起來,允許黑客從遠(yuǎn)端服務(wù)器上建立新的攻擊。還有Ajax也難以避免一些已知的安全弱點(diǎn),諸如跨站點(diǎn)腳步攻擊、SQL注入攻擊和基于Credentials的安全漏洞等等。3. 對(duì)搜索引擎支持較弱:對(duì)搜索引擎的支持比較弱。如果使用不當(dāng),AJAX會(huì)增大網(wǎng)絡(luò)數(shù)據(jù)的流量,從而降低整個(gè)系統(tǒng)的性能。4. 違背URL和資源定位的初衷。例如,我給你一個(gè)URL地址,如果采用了Ajax技術(shù),也許你在該URL地址下面看到的和我在這個(gè)URL地址下看到的內(nèi)容是不同的。這個(gè)和資源定位的初衷是相背離的。5. 客戶端過肥,太

4、多客戶端代碼造成開發(fā)上的成本。編寫復(fù)雜、容易出錯(cuò) ;冗余代碼比較多(層層包含js文件是AJAX的通病,再加上以往的很多服務(wù)端代碼現(xiàn)在放到了客戶端);破壞了Web的原有標(biāo)準(zhǔn)。簡單描述工作原理:Ajax的工作原理相當(dāng)于在用戶和服務(wù)器之間加了個(gè)中間層(AJAX引擎),使用戶操作與服務(wù)器響應(yīng)異步化。并不是所有的用戶請(qǐng)求都提交給服務(wù)器,像些數(shù)據(jù)驗(yàn)證和數(shù)據(jù)處理等都交給Ajax引擎自己來做, 只有確定需要從服務(wù)器讀取新數(shù)據(jù)時(shí)再由Ajax引擎代為向服務(wù)器提交請(qǐng)求。Ajax其核心有JavaScript、XMLHTTPRequest、DOM對(duì)象組成,通過XmlHttpRequest對(duì)象來向服務(wù)器發(fā)異步請(qǐng)求,從服務(wù)

5、器獲得數(shù)據(jù),然后用JavaScript來操作DOM而更新頁面。這其中最關(guān)鍵的一步就是從服務(wù)器獲得請(qǐng)求數(shù)據(jù)。讓我們來了解這幾個(gè)對(duì)象。最基本的例子: AJAX HelloWorld修改內(nèi)容function loadXMLDoc() /在里面去使用ajax做請(qǐng)求,以及更新前端UI var xmlhttp; if (window.XMLHttpRequest) / IE7+, Firefox, Chrome, Opera, Safari 瀏覽器執(zhí)行代碼 xmlhttp=new XMLHttpRequest(); else / IE6, IE5 瀏覽器執(zhí)行代碼 xmlhttp=new ActiveXOb

6、ject(Microsoft.XMLHTTP); xmlhttp.open(GET,/try/ajax/ajax_info.txt,true); xmlhttp.send();下面是我們今天要做的全部功能啦。(2)級(jí)聯(lián)表實(shí)現(xiàn):描述:就是在不更新頁面情況下:商品地址,會(huì)更新下面所說的對(duì)應(yīng)賬號(hào)(博主為了偷懶,簡單寫的邏輯)。圖片展示:實(shí)現(xiàn):demo代碼(一)前端代碼:/注意我給select添加了一個(gè)監(jiān)聽喔。 商品地址: 請(qǐng)選擇 廣東省 北京市 列出對(duì)應(yīng)的賬號(hào): 請(qǐng)選擇 (2)方法監(jiān)聽就看方法嘛:方法體詳解在后面(下面的例子注釋使用時(shí)請(qǐng)刪去)/$.ajax里面就是ajax的方法啦,動(dòng)態(tài)加載: fun

7、ction locationChange() var location = $(#location).find(option:selected).text(); alert(location) var obj = document.getElementById(accounts);/綁定select obj.options.length = 0; obj.add(new Option(請(qǐng)選擇, ); $.ajax( type: post, /請(qǐng)求類型 url: /ajax/findUserByProvince, /請(qǐng)求路徑 cache: false, /緩存是否啟用 data: locatio

8、n: location, /傳參 dataType: json, /期望返回的數(shù)據(jù)體 success: function (result) /result是后臺(tái)返回給前端的結(jié)果集,而我們上面期望他是一個(gè)json,所以就是個(gè)json數(shù)組咯 if (result.length 0) obj.add(new Option(請(qǐng)選擇, ); for (var i in result) /遍歷取值更新select var selectOption = new Option(resulti.account, resulti.account); obj.add(selectOption); ); (3)接下來

9、看后端的處理: ResponseBody RequestMapping(value = /findUserByProvince,produces=text/html;charset=UTF-8, method = RequestMethod.GET,RequestMethod.POST) public String findUserByProvince(String location) List userList = userService.findUserByProvince(location);/這個(gè)只是一個(gè)簡單的根據(jù)省份去查詢用戶賬號(hào)的邏輯,想了解細(xì)節(jié)下方有源碼下載 System.out

10、.println(JSON.toJSONString(userList); /返回一個(gè)json數(shù)組給前端 return JSON.toJSONString(userList); 補(bǔ)充:有朋友反應(yīng)下面這個(gè)jQuery使用看不太懂/$(#location)是綁定了id是location的標(biāo)簽組件/find(option:selected)是拿到上面的標(biāo)簽組件下面的option/使用text()就是可以拿到內(nèi)容啦。var location = $(#location).find(option:selected).text();這就是一個(gè)簡單的級(jí)聯(lián)列表實(shí)現(xiàn),結(jié)合ajax。(3)下面就詳細(xì)講解ajax方

11、法體的各大參數(shù)吧:(一)url:要求為String類型的參數(shù),(默認(rèn)為當(dāng)前頁地址)發(fā)送請(qǐng)求的地址。(二)type:要求為String類型的參數(shù),請(qǐng)求方式(post或get)默認(rèn)為get。注意其他http請(qǐng)求方法,例如put和delete也可以使用,但僅部分瀏覽器支持。(三)timeout:要求為Number類型的參數(shù),設(shè)置請(qǐng)求超時(shí)時(shí)間(毫秒)。此設(shè)置將覆蓋$.ajaxSetup()方法的全局設(shè)置。(四)async:要求為Boolean類型的參數(shù),默認(rèn)設(shè)置為true,所有請(qǐng)求均為異步請(qǐng)求。如果需要發(fā)送同步請(qǐng)求,請(qǐng)將此選項(xiàng)設(shè)置為false。注意,同步請(qǐng)求將鎖住瀏覽器,用戶其他操作必須等待請(qǐng)求完成才

12、可以執(zhí)行。(五)cache要求為Boolean類型的參數(shù),默認(rèn)為true(當(dāng)dataType為script時(shí),默認(rèn)為false),設(shè)置為false將不會(huì)從瀏覽器緩存中加載請(qǐng)求信息。(六)data:要求為Object或String類型的參數(shù),發(fā)送到服務(wù)器的數(shù)據(jù)。如果已經(jīng)不是字符串,將自動(dòng)轉(zhuǎn)換為字符串格式。get請(qǐng)求中將附加在url后。防止這種自動(dòng)轉(zhuǎn)換,可以查看processData選項(xiàng)。對(duì)象必須為key/value格式,例如foo1:”bar1”,foo2:”bar2”轉(zhuǎn)換為&foo1=bar1&foo2=bar2。如果是數(shù)組,JQuery將自動(dòng)為不同值對(duì)應(yīng)同一個(gè)名稱。例如foo:“bar1”,

13、”bar2”轉(zhuǎn)換為&foo=bar1&foo=bar2。(七)dataType:要求為String類型的參數(shù),預(yù)期服務(wù)器返回的數(shù)據(jù)類型。如果不指定,JQuery將自動(dòng)根據(jù)http包mime信息返回responseXML或responseText,并作為回調(diào)函數(shù)參數(shù)傳遞??捎玫念愋腿缦拢簒ml:返回XML文檔,可用JQuery處理。html:返回純文本HTML信息;包含的script標(biāo)簽會(huì)在插入DOM時(shí)執(zhí)行。script:返回純文本JavaScript代碼。不會(huì)自動(dòng)緩存結(jié)果。除非設(shè)置了cache參數(shù)。注意在遠(yuǎn)程請(qǐng)求時(shí)(不在同一個(gè)域下),所有post請(qǐng)求都將轉(zhuǎn)為get請(qǐng)求。json:返回JSON數(shù)

14、據(jù)。jsonp:JSONP格式。使用SONP形式調(diào)用函數(shù)時(shí),例如myurl?callback=?,JQuery將自動(dòng)替換后一個(gè)“?”為正確的函數(shù)名,以執(zhí)行回調(diào)函數(shù)。text:返回純文本字符串。(八)beforeSend:要求為Function類型的參數(shù),發(fā)送請(qǐng)求前可以修改XMLHttpRequest對(duì)象的函數(shù),例如添加自定義HTTP頭。在beforeSend中如果返回false可以取消本次ajax請(qǐng)求。XMLHttpRequest對(duì)象是惟一的參數(shù)。function(XMLHttpRequest) this; /調(diào)用本次ajax請(qǐng)求時(shí)傳遞的options參數(shù) (九)complete:要求為Fun

15、ction類型的參數(shù),請(qǐng)求完成后調(diào)用的回調(diào)函數(shù)(請(qǐng)求成功或失敗時(shí)均調(diào)用)。參數(shù):XMLHttpRequest對(duì)象和一個(gè)描述成功請(qǐng)求類型的字符串。 function(XMLHttpRequest, textStatus) this; /調(diào)用本次ajax請(qǐng)求時(shí)傳遞的options參數(shù) (十)success:要求為Function類型的參數(shù),請(qǐng)求成功后調(diào)用的回調(diào)函數(shù),有兩個(gè)參數(shù)。(1)由服務(wù)器返回,并根據(jù)dataType參數(shù)進(jìn)行處理后的數(shù)據(jù)。(2)描述狀態(tài)的字符串。 function(data, textStatus) /data可能是xmlDoc、jsonObj、html、text等等 this;

16、 /調(diào)用本次ajax請(qǐng)求時(shí)傳遞的options參數(shù) (十一)error:要求為Function類型的參數(shù),請(qǐng)求失敗時(shí)被調(diào)用的函數(shù)。該函數(shù)有3個(gè)參數(shù),即XMLHttpRequest對(duì)象、錯(cuò)誤信息、捕獲的錯(cuò)誤對(duì)象(可選)。ajax事件函數(shù)如下: function(XMLHttpRequest, textStatus, errorThrown) /通常情況下textStatus和errorThrown只有其中一個(gè)包含信息 this; /調(diào)用本次ajax請(qǐng)求時(shí)傳遞的options參數(shù) (十二)contentType:要求為String類型的參數(shù),當(dāng)發(fā)送信息至服務(wù)器時(shí),內(nèi)容編碼類型默認(rèn)為”applica

17、tion/x-www-form-urlencoded”。該默認(rèn)值適合大多數(shù)應(yīng)用場合。(十三)dataFilter:要求為Function類型的參數(shù),給Ajax返回的原始數(shù)據(jù)進(jìn)行預(yù)處理的函數(shù)。提供data和type兩個(gè)參數(shù)。data是Ajax返回的原始數(shù)據(jù),type是調(diào)用jQuery.ajax時(shí)提供的dataType參數(shù)。函數(shù)返回的值將由jQuery進(jìn)一步處理。 function(data, type) /返回處理后的數(shù)據(jù) return data; (十四)global:要求為Boolean類型的參數(shù),默認(rèn)為true。表示是否觸發(fā)全局ajax事件。設(shè)置為false將不會(huì)觸發(fā)全局ajax事件,aj

18、axStart或ajaxStop可用于控制各種ajax事件。(十五)ifModified:要求為Boolean類型的參數(shù),默認(rèn)為false。僅在服務(wù)器數(shù)據(jù)改變時(shí)獲取新數(shù)據(jù)。服務(wù)器數(shù)據(jù)改變判斷的依據(jù)是Last-Modified頭信息。默認(rèn)值是false,即忽略頭信息。(十六)jsonp:要求為String類型的參數(shù),在一個(gè)jsonp請(qǐng)求中重寫回調(diào)函數(shù)的名字。該值用來替代在”callback=?”這種GET或POST請(qǐng)求中URL參數(shù)里的”callback”部分,例如jsonp:onJsonPLoad會(huì)導(dǎo)致將”onJsonPLoad=?”傳給服務(wù)器。(十七)username:要求為String類型的

19、參數(shù),用于響應(yīng)HTTP訪問認(rèn)證請(qǐng)求的用戶名。(十八)password:要求為String類型的參數(shù),用于響應(yīng)HTTP訪問認(rèn)證請(qǐng)求的密碼。(十九)processData:要求為Boolean類型的參數(shù),默認(rèn)為true。默認(rèn)情況下,發(fā)送的數(shù)據(jù)將被轉(zhuǎn)換為對(duì)象(從技術(shù)角度來講并非字符串)以配合默認(rèn)內(nèi)容類型”application/x-www-form-urlencoded”。如果要發(fā)送DOM樹信息或者其他不希望轉(zhuǎn)換的信息,請(qǐng)?jiān)O(shè)置為false。(二十)scriptCharset:要求為String類型的參數(shù),只有當(dāng)請(qǐng)求時(shí)dataType為”jsonp”或者”script”,并且type是GET時(shí)才會(huì)用于

20、強(qiáng)制修改字符集(charset)。通常在本地和遠(yuǎn)程的內(nèi)容編碼不同時(shí)使用。(二十一)$.each()函數(shù):$.each()函數(shù)不同于JQuery對(duì)象的each()方法,它是一個(gè)全局函數(shù),不操作JQuery對(duì)象,而是以一個(gè)數(shù)組或者對(duì)象作為第1個(gè)參數(shù),以一個(gè)回調(diào)函數(shù)作為第2個(gè)參數(shù)?;卣{(diào)函數(shù)擁有兩個(gè)參數(shù):第1個(gè)為對(duì)象的成員或數(shù)組的索引,第2個(gè)為對(duì)應(yīng)變量或內(nèi)容。(4)涉及的重要對(duì)象:(一)XMLHTTPRequest對(duì)象:(Ajax獨(dú)有)Ajax的一個(gè)最大的特點(diǎn)是無需刷新頁面便可向服務(wù)器傳輸或讀寫數(shù)據(jù)(又稱無刷新更新頁面),這一特點(diǎn)主要得益于XMLHTTP組件XMLHTTPRequest對(duì)象。(二)DO

21、M Document Object ModelDOM是給HTML和XML文件使用的一組API。它提供了文件的結(jié)構(gòu)表述,讓你可以改變其中的內(nèi)容及可見物。其本質(zhì)是建立網(wǎng)頁與Script或程序語言溝通的橋梁。所有WEB開發(fā)人員可操作及建立文件的屬性、方法及事件都以對(duì)象來展現(xiàn)(例如,document就代表“文件本身“這個(gè)對(duì)像,table對(duì)象則代表HTML的表格對(duì)象等等)。這些對(duì)象可以由當(dāng)今大多數(shù)的瀏覽器以Script來取用。一個(gè)用HTML或XHTML構(gòu)建的網(wǎng)頁也可以看作是一組結(jié)構(gòu)化的數(shù)據(jù),這些數(shù)據(jù)被封在DOM(Document Object Model)中,DOM提供了網(wǎng)頁中各個(gè)對(duì)象的讀寫的支持。二、

22、企業(yè)級(jí)報(bào)表Excel導(dǎo)入導(dǎo)出:(1)Excel報(bào)表導(dǎo)出:實(shí)現(xiàn):(一)MAVEN對(duì)應(yīng)的庫先:POI、還有文件上傳的包: commons-fileupload commons-fileupload 1.2.1 commons-io commons-io 1.4 org.apache.poi poi 3.15 org.apache.poi poi-ooxml 3.15 (二)制作Excel樣式:創(chuàng)建個(gè)Excel文件,定義自己喜歡的顏色字體,就這么簡單:到j(luò)sp文件中:doExcel.jsp至于數(shù)據(jù)如何接入?看下注釋吧。而且!我們只需要在兩部分寫入數(shù)據(jù)解析代碼,其余不要?jiǎng)樱?/首先看到我們上面導(dǎo)入的j

23、ava包。然后在這里拿到后臺(tái)傳過來的list String titleName = 商品列表; response.addHeader(Content-disposition, attachment;filename= + (new String(titleName.getBytes(GBK), iso-8859-1) + .xls); /拿到數(shù)據(jù) List headList=(List)request.getAttribute(headList); List dataList=(List)request.getAttribute(resultList);% 2006-09-13T11:21:5

24、1Z 2011-10-20T11:56:16Z 12.00 11640 19200 0 90 False False Table ss:ExpandedColumnCount= ss:ExpandedRowCount=65000 x:FullColumns=1 x:FullRows=1 ss:DefaultColumnWidth=99 ss:DefaultRowHeight=20.0625 % /看到Row沒有,就是行的意思,我們要自建循環(huán)去遍歷我們拿到的數(shù)據(jù)。我們先遍歷頭部(頂欄一般有說明的嘛),然后再去遍歷數(shù)據(jù)欄 for(int i=0;i % /遍歷數(shù)據(jù)欄 for(int x=0;x 9

25、 200 200 3 1 False False (四)傳給用戶的Excel文件寫完了,我們要怎樣在后臺(tái)交接數(shù)據(jù)呢?RequestMapping(value = /getExcel,produces=text/html;charset=UTF-8, method = RequestMethod.GET,RequestMethod.POST) public String getExcel(HttpServletRequest request) String location =; List goodlist = goodService.getGoodList(location);/查出數(shù)據(jù) re

26、quest.setAttribute(resultList,goodlist); List headList = new ArrayList();/頂欄的list headList.add(商品名); headList.add(商品類型); headList.add(商品地址); headList.add(商品星級(jí)); headList.add(商品價(jià)格); request.setAttribute(headList,headList); return doExcel; 下載商品列表 (2)Excel報(bào)表導(dǎo)入:(一) 給出我們的規(guī)范:讓用戶下載(二)留出我們的導(dǎo)入接口:前端: 選擇導(dǎo)入文件:

27、文件類型: .xls或.xlsx電子表格文件 (1.表格中不需要留空行; 2.文件名的后綴必須是小寫的.xls或.xlsx;) 備注: 導(dǎo)入支持新增,暫不支持修改數(shù)據(jù),僅支持商品數(shù)據(jù)導(dǎo)入 導(dǎo)入模板: 商品表導(dǎo)入模板.xls    商品表導(dǎo)入模板.xlsx (三)利用js寫好上傳函數(shù)檢查文件表層規(guī)范(后綴、大小等等)、導(dǎo)入步驟:function doLoadTask() var file = $(#filename).val(); if (file = ) alert(請(qǐng)選擇待處理文件); return; else /獲取文件類型后綴 var temp = file

28、.substring(file.lastIndexOf() + 1).toString();/ alert(temp) var extend = file.substring(file.lastIndexOf(.) + 1).toString();/ alert(extend) if (extend = ) alert(請(qǐng)選擇正確格式的文件!); return; else if (!(extend = xlsx) & !(extend = xls) alert(請(qǐng)選擇正確格式的文件!); return; / var form = document.getElementById(formItem); $(#formItem).submit(); (四)后端接收用戶上傳的文件:controller層 Autowired private ParseExcel parseExcel; RequestMapping(value = /uploadExcel,produces=text/html;charset=UTF-8, method = Re

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論