




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第十四章網(wǎng)絡(luò)通信遼寧機(jī)電職業(yè)技術(shù)學(xué)院信息工程系軟件教研室遲勇回顧補(bǔ)充代碼完成:publicclassDigitalClockextendsAppletimplements_____________
{ Threadrunner;//定義線程類實(shí)例 publicvoidstart() { if(runner==null) { runner=newThread(this);//初始化線程類實(shí)例,并指明target對(duì)象this runner.
();//線程就緒,獲得CPU運(yùn)行調(diào)度后,將開始運(yùn)行run()方法
} } publicvoid
(){……}//run()方法定義在實(shí)現(xiàn)Runnable接口的類中}Runnablestartrun本章學(xué)習(xí)任務(wù)使用URL類獲取網(wǎng)絡(luò)信息獲取Internet和本地主機(jī)地址使用ServerSocket類和Socket類實(shí)現(xiàn)簡(jiǎn)單聊天室使用DatagramSocket類和DatagramPacket類實(shí)現(xiàn)客戶端與服務(wù)器端通信本章技能目標(biāo)了解網(wǎng)絡(luò)通信的基本協(xié)議了解URL類的作用使用Socket類和ServerSocket類編寫通信程序使用DatagramSocket類和DatagramPacket類編寫通信程序預(yù)習(xí)檢查(1)--預(yù)習(xí)新單詞單詞釋義單詞釋義LANWANTCPUDPURLSocketDatagramprotocol預(yù)習(xí)檢查(2)TCP與UDP協(xié)議區(qū)別?使用Socket類和ServerSocket類編寫通信程序,創(chuàng)建對(duì)象的語(yǔ)法格式是?網(wǎng)絡(luò)通信-內(nèi)容目錄網(wǎng)絡(luò)基本概念URL使用Socket類和ServerSocket類編寫通信程序DatagramSocket類和DatagramPacket類局域網(wǎng)(LAN)與廣域網(wǎng)(WAN)網(wǎng)絡(luò)大致可分為局域網(wǎng)(LocalAreaNetWork)和廣域網(wǎng)(WideAreaNetWork)兩種。局域網(wǎng)通常是指通過(guò)網(wǎng)卡和網(wǎng)線將一個(gè)網(wǎng)段內(nèi)的所有計(jì)算機(jī)連接在一起的網(wǎng)絡(luò),由于幾乎不計(jì)網(wǎng)絡(luò)帶寬或流量,因此它具有訪問(wèn)簡(jiǎn)便,速度快捷的特點(diǎn)。廣域網(wǎng)現(xiàn)在特指Internet,就是世界上的個(gè)人計(jì)算機(jī)或局部網(wǎng)絡(luò)通過(guò)電話線或?qū)>€連接的世界性網(wǎng)絡(luò)。
域名與IP地址
1.IP地址
IP地址即InternetProtocal地址,它用于在網(wǎng)絡(luò)上唯一標(biāo)識(shí)每一臺(tái)計(jì)算機(jī)。就像我們的家庭電話都有一個(gè)唯一號(hào)碼一樣,IP地址由4組8位的二進(jìn)制數(shù)(共32位)組成,例如:11000000101010000000000000000001
因?yàn)?2位二進(jìn)數(shù)不利于書寫和記憶,因此采用四組十進(jìn)制數(shù)表示,例如上面的二進(jìn)制數(shù)字可轉(zhuǎn)換為:
域名與IP地址
2.域名由于IP地址仍不利于記憶,因此實(shí)際應(yīng)用中經(jīng)常使用域名來(lái)代替IP地址標(biāo)識(shí)網(wǎng)絡(luò)主機(jī)在網(wǎng)絡(luò)上的位置。例如:,等,當(dāng)用戶通過(guò)域名訪問(wèn)網(wǎng)絡(luò)站點(diǎn)時(shí),域名服務(wù)器將域名解析成IP地址,再通過(guò)IP地址訪問(wèn)站點(diǎn)主機(jī)。域名也是唯一的,需要在網(wǎng)絡(luò)域名提供商那里注冊(cè)得到。原則上域名與IP地址是一一對(duì)應(yīng)的關(guān)系,但通過(guò)對(duì)服務(wù)器的特殊設(shè)置也可以實(shí)現(xiàn)多個(gè)域名對(duì)應(yīng)一個(gè)IP地址,即在一臺(tái)服務(wù)器上設(shè)置多個(gè)站點(diǎn)。14.1.3網(wǎng)絡(luò)協(xié)議在Internet上的各種計(jì)算機(jī)系統(tǒng)平臺(tái)之間需要相互通信,但是各個(gè)系統(tǒng)的內(nèi)碼和所能識(shí)別的數(shù)據(jù)規(guī)則不同,就像一位中國(guó)人和一位法國(guó)人在一起交談時(shí)需要一位了解漢語(yǔ)和法語(yǔ)的翻譯一樣,各個(gè)系統(tǒng)之間相互通信需要共同遵守一定的規(guī)則,這些規(guī)則就是協(xié)議。協(xié)議是網(wǎng)絡(luò)的通用語(yǔ)言,它是網(wǎng)絡(luò)中傳遞、管理信息的一些規(guī)范。常見的協(xié)議有:TCP/IP協(xié)議、IPX/SPX協(xié)議、NetBIOS、HTTP協(xié)議等等。TCP和UDP本章示例中涉及的協(xié)議主要為TCP和UDP:TCP(傳輸控制協(xié)議:TransportControlProtocol):是面向連接的協(xié)議,通過(guò)校驗(yàn)保證傳輸數(shù)據(jù)包的可靠性,發(fā)送方和接收方的socket(套接字)必須建立連接,然后才可以通信;Java中的URL,Socket,ServerSocket等類使用TCP協(xié)議通信。UDP(用戶數(shù)據(jù)報(bào)協(xié)議:UserDatagramProtocol):是非面向連接的協(xié)議,傳輸數(shù)據(jù)時(shí)不附加可靠性驗(yàn)證,每個(gè)數(shù)據(jù)報(bào)都包括完整的源地址和目的地址,數(shù)據(jù)報(bào)在網(wǎng)絡(luò)上可能以任何路徑傳往目的地;DatagramPacket,DatagramSocket等類使用UDP協(xié)議通信。選擇協(xié)議的時(shí)機(jī)既然TCP和UDP都可以進(jìn)行網(wǎng)絡(luò)通信,那么實(shí)際應(yīng)用中究竟如何選擇呢?它們的選擇時(shí)機(jī)如下:由于UDP的數(shù)據(jù)報(bào)中包含了完整的地址,因此無(wú)需發(fā)送方和接收方進(jìn)行連接;而TCP是面向連接的協(xié)議,在scoket之間傳輸數(shù)據(jù)時(shí)必須進(jìn)行連接,另外可靠性校驗(yàn)也會(huì)占用一定的網(wǎng)絡(luò)帶寬,因此需要較多處理時(shí)間和系統(tǒng)資源;UDP的數(shù)據(jù)報(bào)大小是有限制的,每個(gè)數(shù)據(jù)報(bào)理論上不大于64KB,但數(shù)據(jù)區(qū)往往只有1472字節(jié),因此往往需要大量傳送數(shù)據(jù)報(bào),而UDP又是一個(gè)非面向連接,不可靠的協(xié)議,因此使用它時(shí)網(wǎng)絡(luò)安全性要求要比較高,如局域網(wǎng)C/S構(gòu)架的應(yīng)用程序;TCP適用于那種需要可靠傳送且長(zhǎng)度不定的數(shù)據(jù)的情況。常見的網(wǎng)絡(luò)服務(wù)與其端口號(hào)常見的網(wǎng)絡(luò)服務(wù)有http、ftp、pop、smtp、telnet等(它們的功能請(qǐng)參看表14-1),為了在一臺(tái)服務(wù)器上安裝多個(gè)服務(wù),我們引入了端口(port)的概念。如果把IP地址比作一間房子,端口就是出入這間房子的門。端口號(hào)的范圍從0到65535。按端口號(hào)號(hào)碼范圍來(lái)劃分,0~1023端口號(hào)為系統(tǒng)保留,固定分配給一些服務(wù),自行設(shè)定端口號(hào)時(shí)要選取大于5000的端口號(hào)。按協(xié)議類型劃分可以分為TCP、UDP、IP和ICMP(Internet控制消息協(xié)議)等類型的端口。常見的網(wǎng)絡(luò)服務(wù)與其端口號(hào)TCP類型端口:即傳輸控制協(xié)議端口,需要在客戶端和服務(wù)器之間建立連接,這樣可以提供可靠的數(shù)據(jù)傳輸。如FTP服務(wù)的21端口,HTTP服務(wù)的80端口等等。UDP類型端口:即用戶數(shù)據(jù)報(bào)協(xié)議端口,無(wú)需在客戶端和服務(wù)器之間建立連接,可靠性得不到保障。常見的有DNS服務(wù)的53端口,QQ使用的8000和4000端口等等。每個(gè)服務(wù)都占用一個(gè)端口,默認(rèn)時(shí)每個(gè)服務(wù)有自己特定的端口號(hào),除非特意改變它們常用網(wǎng)絡(luò)服務(wù)及對(duì)應(yīng)的端口號(hào)表14-1常用網(wǎng)絡(luò)服務(wù)及端口號(hào)網(wǎng)絡(luò)服務(wù)對(duì)應(yīng)端口號(hào)http,超文本傳輸服務(wù)80ftp,文件傳輸服務(wù)21telnet,登錄遠(yuǎn)程服務(wù)器23smtp,簡(jiǎn)單郵件傳輸服務(wù)25pop,將郵件存儲(chǔ)在遠(yuǎn)程郵件服務(wù)器上109常用網(wǎng)絡(luò)服務(wù)及對(duì)應(yīng)的端口號(hào)另外,一些安裝到系統(tǒng)平臺(tái)的Web服務(wù)器軟件和數(shù)據(jù)庫(kù)管理系統(tǒng)軟件在啟動(dòng)時(shí)也會(huì)占用一些固定端口,如MSSQLServer默認(rèn)占用1433端口,ApacheTomcat默認(rèn)占用8080端口,BEAWeblogic默認(rèn)占用7001端口等。ApacheTomcat和BEAWeblogic都是現(xiàn)今比較流行的JSP引擎,主要用于基于JSP技術(shù)開發(fā)的站點(diǎn),JSP(JavaServerPages)應(yīng)是讀者在后繼的學(xué)習(xí)中要接觸到的知識(shí)。SQLServer是微軟公司開發(fā)的操作簡(jiǎn)便但功能強(qiáng)大的數(shù)據(jù)庫(kù)管理系統(tǒng),在本書的最后一章中我們會(huì)學(xué)習(xí)到關(guān)于它基本的訪問(wèn)和使用網(wǎng)絡(luò)通信-內(nèi)容目錄網(wǎng)絡(luò)基本概念URL使用Socket類和ServerSocket類編寫通信程序DatagramSocket類和DatagramPacket類URL類
URL(UniformResourceLocator)是統(tǒng)一資源定位器的簡(jiǎn)稱,它可以用來(lái)標(biāo)識(shí)網(wǎng)絡(luò)資源的地址。URL的組成:
一個(gè)URL包括兩個(gè)部分:協(xié)議名和資源名,中間用冒號(hào)隔開,例如:協(xié)議名:資源名其中協(xié)議名由前面14.2.1節(jié)的網(wǎng)絡(luò)服務(wù)名指定。資源名即資源的完整地址,包括主機(jī)名、端口號(hào)、目錄或文件名等內(nèi)容。下面是幾個(gè)URL地址示例:
/tom/index.html#chapter1:21/pic
Java中的URL類包中的URL類實(shí)現(xiàn)了Java對(duì)URL的應(yīng)用,它的常用構(gòu)造方法如下:1.URL(Stringspec);根據(jù)字符串表示形式創(chuàng)建URL對(duì)象。例如:URLcsdn_url=newURL(“:21/pic”);2.URL(Stringprotocol,Stringhost,intport,Stringfile);根據(jù)指定的協(xié)議、主機(jī)名、端口號(hào)和文件名創(chuàng)建URL對(duì)象。例如:URLcsdn_url=newURL(“ftp”,“”,21,“pic”);
Java中的URL類3.URL(URLcontext,Stringspec);通過(guò)在指定的上下文中對(duì)給定的字符串進(jìn)行解析創(chuàng)建URL對(duì)象。例如:URLcsdn_url=newURL(“:21/pic”); URLindex_url=newURL(csdn_url,“index.html”);注意:構(gòu)造URL對(duì)象時(shí),如果指定了錯(cuò)誤的協(xié)議,會(huì)拋出MalformedURLException異常。
URL類常用方法URL類的方法說(shuō)明int
getDefaultPort()獲得與此URL關(guān)聯(lián)協(xié)議的默認(rèn)端口號(hào)StringgetFile()獲得此URL的文件名StringgetHost()獲得此URL的主機(jī)名StringgetPath()獲得此URL的路徑部分int
getPort()獲得此URL的端口號(hào)StringgetProtocol()獲得此URL的協(xié)議名稱表14-2URL類常用方法例14-1:獲取URL類屬性信息import.*;publicclassGetURLInfo{publicstaticvoidmain(String[]args)throwsMalformedURLException{ URLurl=newURL("/"); URLpageUrl=newURL(url,"download/index.jsp"); System.out.println("協(xié)議關(guān)聯(lián)端口:"+pageUrl.getDefaultPort()); System.out.println("站點(diǎn)文件名:"+pageUrl.getFile()); System.out.println("站點(diǎn)主機(jī):"+pageUrl.getHost()); System.out.println("使用協(xié)議:"+pageUrl.getProtocol());}}14.2.3使用InetAddress類獲取主機(jī)地址網(wǎng)絡(luò)上的主機(jī)地址有兩種表示形式:域名方式:IP地址方式:34使用包中的InetAddress類,可以獲取這兩種地址。
1.獲取Internet上主機(jī)地址使用InetAddress類的getByNames(Strings)靜態(tài)方法可以根據(jù)域名字符串獲得InetAddress對(duì)象,該對(duì)象包含有該參數(shù)的“域名形式”和“IP地址形式”的值對(duì)。例如可以輸入域名“”得到值對(duì)“/32”。另外,InetAddress類還有兩個(gè)方法用以從InetAddress對(duì)象的值對(duì)中獲取“域名形式”或“IP地址形式”。publicStringgetHostName();獲取InetAddress對(duì)象的域名形式publicStringgetHostAddress();獲取InetAddress對(duì)象的IP地址形式2.獲取本地機(jī)地址:使用InetAddress類的getLocalHost()靜態(tài)方法可以獲得本地機(jī)InetAddress對(duì)象,該對(duì)象包含有本機(jī)的域名和IP地址。import.*;publicclassGetAddress{publicstaticvoidmain(String[]args){ try{ InetAddressaddress01=InetAddress.getByName(""); System.out.println(address01.toString());//輸出Internet站點(diǎn)的域名/IP地址
System.out.println(address01.getHostName());//輸出域名
System.out.println(address01.getHostAddress());//輸出IP地址例14-2:獲取Internet和本地主機(jī)地址InetAddressaddress02=InetAddress.getLocalHost();//輸出本地機(jī)域名/IP地址 System.out.println(address02.toString()); System.out.println(address02.getHostName()); System.out.println(address02.getHostAddress()); } catch(UnknownHostExceptionex){ }}}網(wǎng)絡(luò)通信-內(nèi)容目錄網(wǎng)絡(luò)基本概念URL使用Socket類和ServerSocket類編寫通信程序DatagramSocket類和DatagramPacket類Java的網(wǎng)絡(luò)API類庫(kù)是典型的基于TCP/IP通訊的網(wǎng)絡(luò)類庫(kù),程序之間依靠Socket進(jìn)行通訊。我們可以把Socket看成是在兩個(gè)程序進(jìn)行通訊連接中的一個(gè)端點(diǎn)(比如電源的一個(gè)插座),一個(gè)程序先將一段信息寫入Socket中,然后該Socket將這段信息發(fā)送給另外一個(gè)Socket,使這段信息能傳送到那個(gè)程序中。“套接字”(Socket)也是一種軟件形式的抽象,用于表達(dá)兩臺(tái)機(jī)器間一個(gè)連接的“終端”。針對(duì)一個(gè)特定的連接,每臺(tái)機(jī)器上都有一個(gè)“套接字”,可以想象它們之間有一條虛擬的“線纜”。線纜的每一端都插入一個(gè)“套接字”或稱“插座”里。當(dāng)兩臺(tái)機(jī)器都建立了Socket,并連接完畢就可以通信了。什么是socket??jī)蓚€(gè)基于數(shù)據(jù)流的套接字類從套接字得到的結(jié)果是一個(gè)InputStream以及OutputStream(若使用恰當(dāng)?shù)霓D(zhuǎn)換器,則分別是Reader和Writer),以便將連接作為一個(gè)IO流對(duì)象對(duì)待。有兩個(gè)基于數(shù)據(jù)流的套接字類:ServerSocket,服務(wù)器用它“偵聽”進(jìn)入的連接;Socket,客戶用它初始一次連接。運(yùn)行過(guò)程
注意:“ServerSocket”這個(gè)命名有不恰當(dāng)?shù)牡胤?,因?yàn)樗淖饔貌皇钦娴某蔀橐粋€(gè)Socket,而是在其它Socket同它連接的時(shí)候產(chǎn)生一個(gè)Socket對(duì)象。所以,程序的運(yùn)行過(guò)程應(yīng)該是這樣的:1)創(chuàng)建服務(wù)器端ServerSocket對(duì)象和客戶端Socket對(duì)象,建立連接;2)建立信息,以流的形式連接到Socket;3)讀寫操作;4)關(guān)閉Socket。創(chuàng)建ScoketSocket類的常用構(gòu)造方法如下:Socket(InetAddressaddress,intport);創(chuàng)建一個(gè)流套接字并將其連接到指定IP地址的指定端口號(hào)。ServerSocket類的常用構(gòu)造方法如下:ServerSocket(intport);創(chuàng)建綁定到特定端口的服務(wù)器套接字。例如:創(chuàng)建客戶端的Socket對(duì)象,并設(shè)定端口號(hào)為2000,格式為:SocketclientSocket=newSocket("",2000);創(chuàng)建服務(wù)器端的ServerSocket對(duì)象,格式為:ServerSocketserverSocket=newServerSocket(2000);14.3.3創(chuàng)建輸入/輸出流
ServerSocket類與Socket類都提供了getInputStream()和getOutputStream()方法來(lái)得到對(duì)應(yīng)的輸入/輸出流,這兩個(gè)方法分別返回InputStream和OutputStream類的對(duì)象。為了提高輸入/輸出效率,可以再套接過(guò)濾流,如DataInputStream和DataOutputStream類用于處理數(shù)字,InputStreamReader和OutputStreamWriter,PrintWriter等類用于處理文本。例14-3:簡(jiǎn)單聊天室示例(主要代碼)例14-3:服務(wù)器端程序TalkServer類(TalkServer.java程序代碼)/*建立服務(wù)器端ServerSocket對(duì)象*/serverSocket=newServerSocket(2000);System.out.println("等待客戶端的連接...");clientSocket=serverSocket.accept();//接收來(lái)自客戶端的Socketbr=newBufferedReader(newInputStreamReader(clientSocket.getInputStream()));System.out.println("來(lái)自客戶端的信息是:"+br.readLine());TalkServer.java程序代碼
(主要代碼)/*建立接收本地服務(wù)器控制臺(tái)的輸入信息的輸入流對(duì)象server_br*/BufferedReaderserver_br=newBufferedReader( newInputStreamReader(System.in));//接收來(lái)自客戶端信息Stringserver_info=server_br.readLine();/*建立向客戶端寫出信息的輸出流對(duì)象pw*/pw=newPrintWriter(newOutputStreamWriter(clientSocket.getOutputStream));//接收本地服務(wù)器控制臺(tái)的輸入信息while(!server_info.equals("bye")){ pw.println(server_info);//把信息傳給客戶端客戶端程序Talk類(主要代碼)SocketclientSocket=newSocket("",2000);//建立客戶端的Socket/*建立接收服務(wù)器端信息的輸入流對(duì)象br*/BufferedReaderbr=newBufferedReader(newInputStreamReader(clientSocket.getInputStream()));/*建立向服務(wù)器端寫出信息的輸出流對(duì)象pw*/PrintWriterpw=newPrintWriter(newOutputStreamWriter( clientSocket.getOutputStream));/*建立接收本地客戶端控制臺(tái)的輸入信息的輸入流對(duì)象client_br*/BufferedReaderclient_br=newBufferedReader( newInputStreamReader(System.in));
Talk.java程序代碼(主要代碼)System.out.println(“聊天客戶端已經(jīng)啟動(dòng)...”);Stringclient_info=client_br.readLine();//本地客戶端控制臺(tái)的輸入信息System.out.println(“您輸出的信息是:”+client_info);while(!client_info.equals("bye")){//客戶端控制臺(tái)輸入"bye"時(shí)程序結(jié)束 pw.println(client_info);//把信息傳給服務(wù)器端…運(yùn)行步驟2)3)1)編譯好兩個(gè)源程序,先啟動(dòng)TalkServer類,再啟動(dòng)Talk類;在客戶端程序控制臺(tái)窗口中輸入“你好,管理員”,在服務(wù)器端窗口中會(huì)看到此信息;當(dāng)在兩個(gè)窗口中輸入“bye”時(shí),程序退出?!具\(yùn)行步驟】運(yùn)行結(jié)果網(wǎng)絡(luò)通信-內(nèi)容目錄網(wǎng)絡(luò)基本概念URL使用Socket類和ServerSocket類編寫通信程序DatagramSocket類和DatagramPacket類14.4創(chuàng)建、接收與發(fā)送數(shù)據(jù)報(bào)需要從多個(gè)路徑收集多種數(shù)據(jù),且對(duì)可靠性要求并不嚴(yán)格,這時(shí)就可以考慮使用基于UDP協(xié)議的通信方式。另外,UDP也可以實(shí)現(xiàn)組播方式通信。包提供了DatagramSocket類和DatagramPacket類用來(lái)支持?jǐn)?shù)據(jù)報(bào)通信,其中DatagramPacket類用于建立數(shù)據(jù)報(bào)包,DatagramSocket類用于在程序之間建立數(shù)據(jù)報(bào)的通信連接。在數(shù)據(jù)報(bào)通信時(shí),客戶端與服務(wù)器端都要先建立DatagramSocket對(duì)象以進(jìn)行連接,然后就可以接收或發(fā)送數(shù)據(jù)報(bào)包。DatagramSocket類常用構(gòu)造方法DatagramSocket類常用構(gòu)造方法:DatagramSocket(intport)
創(chuàng)建數(shù)據(jù)報(bào)套接字并將其綁定到本地主機(jī)上的指定端口。DatagramSocket(intport,InetAddressladdr)
創(chuàng)建數(shù)據(jù)報(bào)套接字,將其綁定到指定的本地地址。DatagramPacket類常用構(gòu)造方法DatagramPacket類常用構(gòu)造方法:(其中buf數(shù)組用以存放數(shù)據(jù)報(bào)數(shù)據(jù))DatagramPacket(byte[]buf,intlength)
構(gòu)造DatagramPacket,用來(lái)接收長(zhǎng)度為length的數(shù)據(jù)包。DatagramPacket(byte[]buf,intoffset,intlength)構(gòu)造DatagramPacket,用來(lái)接收長(zhǎng)度為length的包,并指定緩沖區(qū)偏移量DatagramPacket(byte[]buf,
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 電氣設(shè)備在智能家居環(huán)境監(jiān)測(cè)系統(tǒng)中的應(yīng)用考核試卷
- 電氣機(jī)械工程實(shí)驗(yàn)室建設(shè)與管理考核試卷
- 窗簾布藝的數(shù)字化設(shè)計(jì)工具開發(fā)與應(yīng)用趨勢(shì)考核試卷
- 蔬果罐頭生產(chǎn)過(guò)程中的食品安全問(wèn)題案例分析考核試卷
- 玩具企業(yè)的市場(chǎng)預(yù)測(cè)與銷售渠道拓展考核試卷
- 航海模擬訓(xùn)練與評(píng)估方法考核試卷
- 票務(wù)代理企業(yè)成本控制策略考核試卷
- 自由職業(yè)者的職業(yè)健康與挑戰(zhàn)考核試卷
- 玻璃在太陽(yáng)能光伏組件中的應(yīng)用考核試卷
- 神經(jīng)介入診療技術(shù)規(guī)范化培訓(xùn)
- 抗生素臨床療效評(píng)價(jià)-全面剖析
- 2025年角膜接觸鏡考試題及答案
- 西部計(jì)劃面試試題及答案
- 中級(jí)宏觀經(jīng)濟(jì)學(xué)知到課后答案智慧樹章節(jié)測(cè)試答案2025年春浙江大學(xué)
- 江蘇開放大學(xué)2025年春大學(xué)英語(yǔ)B【2】
- 2025年江蘇省安全員-B證考試題庫(kù)及答案
- 【數(shù)學(xué)】圖形的軸對(duì)稱 問(wèn)題解決策略:轉(zhuǎn)化課件+2024-2025學(xué)年北師大版數(shù)學(xué)七年級(jí)下冊(cè)
- 鐵路運(yùn)輸安全風(fēng)險(xiǎn)防范-洞察分析
- 三年級(jí) 語(yǔ)文 下冊(cè)《火燒云》課件 (第1課時(shí))
- 2025年臨床醫(yī)師定期考核必考復(fù)習(xí)題庫(kù)及答案(1080題)
- 二零二五年度老舊小區(qū)改造房屋聯(lián)建合作協(xié)議3篇
評(píng)論
0/150
提交評(píng)論