




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第6章JSP內置對象主講人:2025/2/612025/2/6《Web程序設計》21JSP對象2out對象3request對象4response對象5session對象6application對象7其他對象及綜合示例本章課程目標知識目標掌握JSP內置對象基本屬性及方法、使用方法;能力要求:能夠理解并掌握Web程序設計中的基礎知識與工作原理,將知識與原理應用于開發過程中的問題分析;具備復雜問題的分析與綜合能力,能夠綜合運用所學知識,分析關鍵需求,設計適用于復雜問題的解決方案;2025/2/6《Web程序設計》36.1JSP內置對象JSP內置對象是Web容器創建的一組對象,開發人員在進行JSP頁面編程時,不需要使用new關鍵字進行實例化,就可以使用的一組內置對象。由于這些對象是由容器在初始化時隱式創建的,因此,這些內置對象也稱為JSP隱式對象。JSP中的內置對象有:out、request、response、session、application、config、pageContext、page、exception2025/2/6《Web程序設計》4特點這些內置對象具有以下特點:
由JSP容器提供實例化,程序開發人員無需實例化即可使用;
由JSP容器管理其生命周期,創建和銷毀;
所有的JSP頁面均可使用這些內置對象;
只有在腳本元素的表達式或代碼段中才可使用(<%=使用內置對象%>或<%使用內置對象%>)。2025/2/6《Web程序設計》5示例2025/2/6《Web程序設計》6//設置請求字符的編碼格式request.setCharacterEncoding("utf-8");//獲取login.jsp頁面表單元素的值,參數名稱和表單元素名稱一致Stringsname=request.getParameter("sname");Stringpasswd=request.getParameter("passwd");if(sname!=null&&!sname.equals("")&&passwd!=null&&!passwd.equals("")){out.println("登陸成功!"+"<br>");out.println("賬號:"+sname+"<br>");out.println("密碼:"+passwd+"<br>");}else{out.println("登錄失敗!");}工作機制JSP頁面在被客戶端請求時,容器首先判斷該JSP頁面是否為第一次訪問,如果是第一次,則初始化該JSP頁面:即生成JSP頁面的java文件,編譯為class,然后執行這個class文件,產生響應后的HTML代碼,返回給客戶端。2025/2/6《Web程序設計》7publicfinalclassindex_jspextendsorg.apache.jasper.runtime.HttpJspBaseimplementsorg.apache.jasper.runtime.JspSourceDependent,org.apache.jasper.runtime.JspSourceImports{
publicvoid_jspInit(){}publicvoid_jspDestroy(){}publicvoid_jspService(){finaljavax.servlet.jsp.PageContextpageContext;javax.servlet.http.HttpSessionsession=null;finaljavax.servlet.ServletContextapplication;finaljavax.servlet.ServletConfigconfig;javax.servlet.jsp.JspWriterout=null;finaljava.lang.Objectpage=this;javax.servlet.jsp.JspWriter_jspx_out=null;try{
}}2025/2/6《Web程序設計》81JSP對象2out對象3request對象4response對象5session對象6application對象7其他對象及綜合示例out簡介out是javax.servlet.jsp.JspWriter類的實例化對象,主要功能就是完成頁面的輸出操作,將計算結果和從數據庫中獲取的數值輸出到網頁上,使用println()或print()方法輸出,形成最終返回給客戶端的HTML代碼。2025/2/6《Web程序設計》9方法作用publicvoidprintln()向客戶端打印字符串,帶’\n’publicvoidprint()向客戶端打印字符串publicvoidclear()清除緩存區的內容,如果在flush之后調用會拋出異常。publicvoidclearBuffer()清除緩存區的內容,如果在flush之后調用不會拋出異常publicvoidflush()將緩存區內容輸出到客戶端publicintgetBufferSize()返回緩存區的大小以字節數的大小,如不設緩存區則為0publicbooleanisAutoFlush()返回緩存區滿時,是自動清空還是拋出異常publicvoidclose()關閉輸出流out使用示例out對象在使用時通常使用out.println()或out.print()輸出文本信息。直接輸出時,可采用”<%=xxx%>”方式替代。2025/2/6《Web程序設計》10<div><%out.println(“helloworld”);%><!--采用out.println()輸出--></div><!--等同于下面這種方式--><div><%=“helloworld”%><!--采用<%=%>輸出--></div>楊輝三角形示例輸出的主要思路如下:指定n行,循環n次,每次輸出其中的一行;采用一個二維數組存儲楊輝三角形的值;在處理每一行時,先輸出每一行前面的空格(由于HTML會將連續的“”看成一個,所以此處使用
字符);計算每行中的楊輝三角數值,然后輸出該數值;輸出換行符(由于HTML不會輸出”\n”,因此采用<br>進行換行)。完整的示例代碼如下所示:2025/2/6《Web程序設計》112025/2/6《Web程序設計》12<%!intn=10;//以10為例int[][]a=newint[n][n];inti,j;%><%for(i=0;i<n;i++){//循環n次,輸出n行//輸出前導空格for(j=0;j<n-i;j++)out.print(" ");//計算輸出數字for(j=0;j<i;j++){if(i==0||j==0||i==j){a[i][j]=1;}else{a[i][j]=a[i-1][j]+a[i-1][j-1];}out.print("<spanclass='cell'>"+a[i][j]+"</span>");//每個數字后面2個空格}out.println("<br>");//輸出后面的換行標記,注意輸出"\n"不能使網頁上的文本換行}%>2025/2/6《Web程序設計》131JSP對象2out對象3request對象4response對象5session對象6application對象7其他對象及綜合示例6.3request對象request對象是javax.servlet.http.HttpServletRequest類的實例。每當客戶端請求一個JSP頁面時,JSP引擎就會制造一個新的request對象來代表這個請求。請求中一般包含了請求所需的參數值或者信息。因此,可以通過request來獲取客戶端和服務端的信息,如傳遞參數名和參數值、IP地址、應用系統名,服務器主機名等。2025/2/6《Web程序設計》14request對象常用方法Cookie[]getCookies()返回客戶端所有的Cookie的數組EnumerationgetAttributeNames()返回request對象的所有屬性名稱的集合EnumerationgetHeaderNames()返回所有HTTP頭的名稱集合EnumerationgetParameterNames()返回請求中所有參數的集合HttpSessiongetSession()返回request對應的session對象,如果沒有,則創建一個ObjectgetAttribute(Stringname)返回名稱為name的屬性值,如果不存在則返回null。StringgetParameter(Stringname)返回此request中name指定的參數,若不存在則返回nullString[]getParameterValues(Stringname)返回指定名稱的參數的所有值,若不存在則返回nullStringgetHeader(Stringname)返回name指定的信息頭StringgetProtocol()返回此request所使用的協議名和版本StringgetContextPath()返回requestURI中指明的上下文路徑StringgetRemoteAddr()返回客戶端的IP地址StringgetRequestURI()返回request的URIintgetContentLength()返回request主體所包含的字節數,若未知的返回-12025/2/6《Web程序設計》15request對象的主要作用體現在兩個方面。1)獲取請求中的參數值,主要通過request.getParameter(paramName)和request.getParameterValues(paramName)按參數名稱獲取,前者為獲取單個值,后者通常用于獲取多個值,例如多選框checkbox選中的值。請求中的參數值通過是采用映射表的形式存儲,即key-value對,key為參數名稱,對應表單元素的name或請求url中的參數名稱,value為該參數的值;2)獲取請求中的請求頭參數(Headers),主要通過request.getHeader(paramName),請求頭是HTTP協議規定的必要內容,通常用于標識該請求的一些相應設置2025/2/6《Web程序設計》16requestheaders2025/2/6《Web程序設計》17request請求處理當客戶端通過超鏈接的形式發送請求時,可以為該請求傳遞參數,通過在超鏈接的后面加上問號“?”來實現。如果要同時指定多個參數,各參數間使用與符號“&”分隔即可。2025/2/6《Web程序設計》18<ahref=”detail.jsp?id=3320183901&from_module=22”>查看商品</a><!--detail.jsp--><%Stringid=request.getParameter(“id”);Stringmodule=request.getParameter(“from_module”);%>get與post請求通過form表單方式傳遞參數時,有個非常重要的屬性method。method有兩個值,分別是get和post。get:以明文的方式通過URL提交數據,數據在URL中可以看到。提交的數據最多不超過2KB。安全性較低但效率比post方式高。適合提交數據量不大,安全性不高的數據。如:搜索、查詢等功能。post:將用戶提交的信息封裝在HTMLheader內。適合提交數據量大,安全性高的用戶信息。比如:注冊、修改、上傳等功能。2025/2/6《Web程序設計》19中文參數值處理由于JSP頁面默認使用iso-8859-1字符集,而中文字符集一般使用GBK或utf-8,因此容易出現中文亂碼的情況。在JSP頁面中處理中文亂碼的情況需要注意以下幾個方面(以utf-8字符集為例,GBK亦然):確認HTML編碼字符集與JSP的contentType均為utf-8字符集JSP頁面的保存文本字符集也要設置為utf-8字符集;在處理請求參數的頁面,對獲取到的中文參數值進行解碼處理2025/2/6《Web程序設計》20request.setCharacterEncoding(“utf-8”);Stringname=request.getParameter(“item_name”);Stringname=newString(request.getParameter("item_name").getBytes("ISO-8859-1"),"utf-8")設置cookiecookie是用來存儲小段的文本信息,在網絡服務器上生成,并發送給瀏覽器的。通過使用cookie可以標識用戶身份,記錄用戶名和密碼,跟蹤重復用戶等。瀏覽器將cookie以key/value的形式保存到客戶機的某個指定目錄中。2025/2/6《Web程序設計》21//寫入cookie對象Stringusername=request.getParameter(“username”);Cookiecookie=newCookie("username",username);//創建并實例化cookie對象cookie.setMaxAge(60*60*24*7);//設置cookie有效期為7天response.addCookie(cookie);//保存cookie對象//讀取cookie值Cookie[]cookies=request.getCookies();//從request中獲取cookie對象的集合Stringusername="";if(cookies!=null){//遍歷cookie對象集合for(CookiecookieItem:cookies){if(cookieItem.getName().equals("username")){username=cookieItem.getValue();//讀取cookie對象的的值}}}用戶名:<inputtype=”text”name=”username”value=”<%=username%>”>request使用示例2025/2/6《Web程序設計》22注冊頁面(ex_req.jsp)提交查看頁面(ex_req_save.jsp)2025/2/6《Web程序設計》23<formaction="ex_req_save.jsp"method="post"><div>用戶:<inputtype="text"name="username"></div><div>密碼:<inputtype="password"name="password"></div><div>確認:<inputtype="password"name="password2"></div><div>性別:<inputtype="radio"name="sex"value="1"checked="checked">男<inputtype="radio"name="sex"value="0">女</div><div>郵箱:<inputtype="text"name="email"></div><div>課程:<inputtype="checkbox"name="subject"value="0"/>計算機視覺<inputtype="checkbox"name="subject"value="1"/>人工智能<inputtype="checkbox"name="subject"value="2"/>自然語言處理<inputtype="checkbox"name="subject"value="3"/>數據可視化</div><div>簡介:<textareaname="intro"cols="60"rows="8"></textarea></div><div><inputtype="submit"value="提交查看"></div><%!/*自定義函數,將字符串轉碼為中文*/publicstaticStringtoCN(Stringstr){if(str==null)returnstr;try{str=newString(str.getBytes("iso-8859-1"),"utf-8");}catch(UnsupportedEncodingExceptione){e.printStackTrace();}returnstr;}%><%//獲取單個值使用getParameter方法
Stringusername=toCN(request.getParameter("username"));Stringpassword=request.getParameter("password");Stringpassword2=request.getParameter("password2");Stringsex=request.getParameter("sex");Stringintro=toCN(request.getParameter("intro"));//獲取多個值使用getParameterValues方法,返回值是字符串數組
String[]subjects=request.getParameterValues("subject");if("0".equals(sex.trim())){sex="女";}else{sex="男";}
2025/2/6《Web程序設計》241JSP對象2out對象3request對象4response對象5session對象6application對象7其他對象及綜合示例6.4response對象response對象用于響應客戶請求,向客戶端輸出信息。response對象屬于javax.servlet.http.HttpServletResponse接口的實例。它封裝了JSP產生的響應,并發送到客戶端以響應客戶端的請求。請求的數據可以是各種數據類型,甚至是文件。當服務器創建request對象時會同時創建用于響應這個客戶端的response對象。response對象的主要作用是對客戶端的請求進行回應,將Web服務器處理后的結果發回給客戶端。2025/2/6《Web程序設計》25HTTP協議響應信息響應頭描述Allow指定服務器支持的request方法(GET,POST等等)Cache-Control指定響應文檔能夠被安全緩存的情況。通常取值為public,private或no-cache等等。Public意味著文檔可緩存,Private意味著文檔只為單用戶服務并且只能使用私有緩存。No-cache意味著文檔不被緩存。Connection命令瀏覽器是否要使用持久的HTTP連接。close值
命令瀏覽器不使用持久HTTP連接,而keep-alive意味著使用持久化連接。Content-Disposition讓瀏覽器要求用戶將響應以給定的名稱存儲在磁盤中Content-Encoding指定傳輸時頁面的編碼規則Content-Language表述文檔所使用的語言,比如en,en-us,,ru等等Content-Length表明響應的字節數。只有在瀏覽器使用持久化(keep-alive)HTTP連接時才有用Content-Type表明文檔使用的MIME類型Expires指明啥時候過期并從緩存中移除Last-Modified指明文檔最后修改時間。客戶端可以緩存文檔并且在后續的請求中提供一個If-Modified-Since請求頭Location在300秒內,包含所有的有一個狀態碼的響應地址,瀏覽器會自動重連然后檢索新文檔Refresh指明瀏覽器每隔多久請求更新一次頁面。Retry-After與503(ServiceUnavailable)一起使用來告訴用戶多久后請求將會得到響應Set-Cookie指明當前頁面對應的cookie2025/2/6《Web程序設計》26響應示例2025/2/6《Web程序設計》27response對象的主要方法方法描述StringencodeURL(Stringurl)將URL編碼,回傳包含SessionID的URLvoidaddCookie(Cookiecookie)添加指定的cookie至響應中voidaddHeader(Stringname,Stringvalue)添加指定名稱的響應頭和值voidreset()清除任何緩存中的任何數據,包括狀態碼和各種響應頭voidsendError(intsc,Stringmsg)使用指定的狀態碼和消息向客戶端發送一個出錯響應voidsendRedirect(Stringlocation)使用指定的URL向客戶端發送一個臨時的間接響應voidsetCharacterEncoding(Stringcharset)指定響應的編碼集(MIME字符集),例如UTF-8voidsetContentType(Stringtype)設置響應的內容的類型,如果響應還未被提交的話voidsetHeader(Stringname,Stringvalue)使用指定名稱和值設置響應頭的名稱和內容2025/2/6《Web程序設計》28重定向網頁使用response對象提供的sendRedirect()方法可以將網頁重定向到另一個頁面。在客戶端瀏覽器上將會得到跳轉的地址,并重新發送請求鏈接。用戶可以從瀏覽器的地址欄中看到跳轉后的地址。進行重定向操作后,request中的屬性全部失效,并且重新創建一個新的request對象。2025/2/6《Web程序設計》29sendRedirect()方法的語法格式如下:2025/2/6《Web程序設計》30response.sendRedirect(Stringpath);參數說明:path:用于指定目標路徑,可以是相對路徑,也可以是不同主機的其他URL地址。<%response.sendRedirect(“login.jsp");//重定向到登錄頁面%>通過response對象可以設置HTTP響應報頭。1)禁用緩存2)設置頁面自動刷新3)設置定時跳轉網頁2025/2/6《Web程序設計》31<%response.setHeader("Cache-Control","no-store");//設置沒有緩存response.setDateHeader("Expires",0);//設置緩存過期日期為0%><%response.setHeader("refresh","10");//單位為秒%><%response.setHeader("refresh","5;URL=login.jsp");//單位為秒%>response使用示例2025/2/6《Web程序設計》32<body><%Stringmsg=null,url=null;//獲取輸入的登錄信息
Stringusername=request.getParameter("username");Stringpassword=request.getParameter("password");if(username==null||"".equals(username)){msg="用戶名不能為空";url="login.jsp";}elseif(password==null||"".equals(password)||password.length()<6){msg="密碼不能為空或長度過短";url="login.jsp";}else{msg="登錄成功,即將跳轉至系統首頁!";url="index.jsp";}out.println(msg);//顯示提示信息,設置5秒后自動跳轉
response.setHeader("refresh","5;URL="+url);%></body>check.jsplogin.jspindex.jsp失敗成功2025/2/6《Web程序設計》331JSP對象2out對象3request對象4response對象5session對象6application對象7其他對象及綜合示例session簡介session表示客戶端與服務器的一次會話,是javax.servlet.http.HttpSession接口的實例化對象。Web中的session指定是用戶在瀏覽某個網站時,從進入網站到瀏覽器關閉所經過的這段時間,與用戶相關的所有信息都被保存在session中,因此,JSP中使用session對象存儲與用戶一次會話相關的所有信息。HTTP協議是一種無狀態的協議(即不保存連接狀態的協議),每次用戶請求在接收到服務器的響應后,連接就關閉了。為了彌補這一缺點,HTTP協議提供了session。2025/2/6《Web程序設計》34Session對象的常用方法方法描述publicObjectgetAttribute(Stringname)返回session對象中與指定名稱綁定的對象,如果不存在則返回nullpublicEnumerationgetAttributeNames()返回session對象中所有的對象名稱publicStringgetId()返回session對象的IDpublicvoidinvalidate()將session無效化,解綁任何與該session綁定的對象publicbooleanisNew()返回是否為一個新的客戶端,或者客戶端是否拒絕加入sessionpubliclonggetLastAccessedTime()返回客戶端最后訪問的時間,以毫秒為單位,從1970年1月1號凌晨開始算起publicvoidremoveAttribute(Stringname)移除session中指定名稱的對象publicvoidsetAttribute(Stringname,Objectvalue)使用指定的名稱和值來產生一個對象并綁定到session中publicvoidsetMaxInactiveInterval(intinterval)用來指定時間,以秒為單位,servlet容器將會在這段時間內保持會話有效2025/2/6《Web程序設計》35session生命周期管理session的生命周期分為三個階段:創建、活動、銷毀。(1)創建當客戶端第一次訪問某個JSP頁面時,服務器會為當前會話創建一個sessionID,每次客戶端向服務端發送請求時,都會將此sessionID一并發送過去,服務端會進行校驗。(2)活動當session創建后,客戶端再訪問其它頁面都屬于同一次會話。只要當前會話頁面沒有全部關閉,重新打開的新的瀏覽器窗口訪問同一項目資源時,也屬于同一次會話。除非本次會話的所有頁面都關閉后再重新訪問系統某個頁,將會創建新的會話。(3)銷毀session的銷毀只有三種方式:明確調用session.invalidate()方法、session過期(超時)、服務器重新啟動。這三種方式會使當前的會話清除。2025/2/6《Web程序設計》36Tomcat的默認session超時時間為30分鐘,可以通過session.setMaxInactiveInterval(time)方法設置某個session的超時時間。還可以通過web.xml中配置參數“session-timeout”,這種方法是設置所有的session超時時間。2025/2/6《Web程序設計》37<!--web.xml--><session-config>//單位是分鐘
<session-timeout>10</session-timeout></session-config>session使用示例2025/2/6《Web程序設計》38<%//獲取會話信息Stringusername=(String)session.getAttribute("username");DatelastAccessTime=newDate(session.getLastAccessedTime());DatecurTime=newDate();longminuteDiff=(curTime.getTime()-lastAccessTime.getTime())/(1000*60);//如果用戶名不為空,則會話還在,且與上次訪問時間相差不超過30分鐘,則正常
if(username!=null&&minuteDiff<30){
}else{//認為會話已超期,跳轉到登錄頁面
session.removeAttribute(“username”);session.invalidate();response.sendRedirect("/login.jsp");}%>session.setAttribute(“username”,username);//將用戶名寫入到會話中注銷用戶的登錄狀態,清空會話信息2025/2/6《Web程序設計》39<!--注銷頁面--><%//清空session中的信息Enumerationelem=session.getAttributeNames();while(elem.hasMoreElements()){Stringname=(String)elem.nextElement();session.removeAttribute(name);}session.invalidate();//跳轉至登錄頁面response.sendRedirect(“/login.jsp”);%>2025/2/6《Web程序設計》401JSP對象2out對象3request對象4response對象5session對象6application對象7其他對象及綜合示例6.6application對象application對象用于保存所有應用中的共有數據。它在服務器啟動時自動創建,在服務器停止時銷毀。當application對象沒有被銷毀時,所有用戶都可以共享該application對象。與session對象相比,application對象的生命周期更長,類似于系統的“全局變量”。application對象是javax.servlet.ServletContext接口的實例化對象。向application中添加的數據,該web應用的所有JSP文件都能訪問,在任何地方對application對象中的數據操作,都將影響到其他用戶對此的訪問。2025/2/6《Web程序設計》41application對象常用方法方法描述publicvoidsetAttribute(Stringname,Objectvalue);使用指定名稱將對象綁定到此對話publicObjectgetAttribute(Stringname);返回與此會話中的指定名稱綁定在一起的對象,如果沒有對象綁定在該名稱下,則返回nullEnumerationgetAttributeName();返回所有可用屬性名的枚舉StringsetServerInfo();返回JSP(Servlet)引擎名及版本號StringgetRealPath(Stringpath);得到虛擬路徑對應的絕對路徑publicStringgetContextPath();取得當前的虛擬路徑名稱2025/2/6《Web程序設計》42應用內共享數據通過setAttribute()方法向application中添加數據,通過getAttribute方法從application中獲取已添加的數據。2025/2/6《Web程序設計》43<%
//添加數據List<String>msgList=bo.getMessageList();application.setAttribute(“messageList”,msgList);
%><%//從application中獲取數據List<String>messageList=(List<String>)application.getAttribute(“messageList”);if(messageList!=null){//要判斷是否為空,因為可能還未添加}%>訪問應用程序初始化參數application對象提供了對應用程序初始化參數進行訪問的方法。應用程序初始化參數在web.xml文件中通過<context-param>標記配置應用程序初始化參數,web.xml位于Web應用WEB-INF子目錄中。2025/2/6《Web程序設計》44<!--web.xml--><context-param><param-name>url</param-name><param-value>jdbc:mysql://localhost/book_db</param-value></context-param><context-param><param-name>username</param-name><param-value>user</param-value></context-param>//通過參數名稱獲取單個參數Stringurl=application.getInitParameter("url");Stringusername=application.getInitParameter(“username”);//還可以通過參數枚舉方法進行遍歷Enumeration<String>elems=application.getInitParameterNames();//獲取全部初始化參數while(elems.hasMoreElements()){Stringname=elems.nextElement();//獲取參數名Stringvalue=application.getInitParameter(name);//獲取參數值}application使用示例2025/2/6《Web程序設計》45<%@pagelanguage="java"contentType="text/html;charset=UTF-8"%><html><head><title>application對象使用示例</title></head><body><%Integercounter=(Integer)application.getAttribute("counter");if(counter==null||counter==0){//第一次訪問
out.println("歡迎訪問本網頁!");counter=1;}else{//多次訪問
out.println("歡迎再次訪問本網站!");counter+=1;}application.setAttribute("counter",counter);%><div>頁面累計訪問量為:<%=counter%></div></body></html>這種方式計數的問題在哪?2025/2/6《Web程序設計》461JSP對象2out對象3request對象4response對象5session對象6application對象7其他對象及綜合示例其他JSP內置對象pageContext對象pageContext對象是一個比較特殊的對象,用于獲取頁面上下文信息page對象page對象本質上是包含當前Servlet接口引用的變量,可以看作是this關鍵字。config對象config對象主要用于獲取服務器的配置信息,實現了javax.servlet.ServletConfig接口。exception對象exception對象用來處理JSP文件執行時發生的所有錯誤和異常,只有在page指令中設置isErrorPage屬性值為true的頁面中才可以被使用。2025/2/6《Web程序設計》47綜合示例用戶登錄頁面為例,業務流程如下:2025/2/6《Web程序設計》48login.jspchk.jspapplication_page.jsp提交登錄驗證成功驗證失敗login
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 云南昆明市黃岡實驗學校2024-2025學年高二下數學期末達標測試試題含解析
- 浙江省杭州八中2025年高二下數學期末學業水平測試模擬試題含解析
- 新疆烏魯木齊市2024-2025學年化學高二第二學期期末達標檢測模擬試題含解析
- 新疆哈密市十五中2025年高二化學第二學期期末質量跟蹤監視試題含解析
- 云南省賓川縣第四高級中學2025屆高二下物理期末統考模擬試題含解析
- 浙江省溫州樹人中學2025年高二化學第二學期期末達標測試試題含解析
- 旅游產業借款合同模板:含旅游服務收入擔保條款
- 車輛抵押權質押合同范本
- 城市道路兩側廣告牌拆除與交通組織優化合同
- 生態環保草坪圍欄設計與施工合同
- 2024信息安全意識培訓ppt課件完整版含內容
- 《蘇霍姆林斯基》課件
- 無人機遙感圖像處理技術
- 火龍罐綜合灸療法
- 新能源領域的隱患治理
- 物品借出申請表
- 2021上海慢行交通規劃設計導則
- GB/T 10322.1-2023鐵礦石取樣和制樣方法
- QC提高老年患者靜脈留置針一次穿刺成功率
- GB/T 7233.1-2009鑄鋼件超聲檢測第1部分:一般用途鑄鋼件
- GB/T 545-1996海軍錨
評論
0/150
提交評論