版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第6章 JavaBean組件程序設(shè)計(jì),,6,內(nèi)容提要,本章介紹組件開(kāi)發(fā)技術(shù)。簡(jiǎn)要介紹組件的基本概念JavaBean的編寫(xiě)以及調(diào)用方法JavaBean的屬性介紹常用的外部組件:發(fā)送Email組件文件上傳圖形組件。介紹JSP標(biāo)記庫(kù)的編寫(xiě)以及使用介紹Java設(shè)計(jì)模式以及JSP設(shè)計(jì)模式。,組件技術(shù)概述,現(xiàn)在軟件開(kāi)發(fā)都已經(jīng)轉(zhuǎn)向了基于組件的開(kāi)發(fā),目前具備代表性的組件技術(shù)有微軟的COM、COM+,有Sun的JavaBean和EJ
2、B(Enterprise Java Bean),另外還有CORBA(Common Object Request Broker Architecture,公共對(duì)象請(qǐng)求代理結(jié)構(gòu))。,組件和容器,容器是包含其它組件的組件。它們被用作組件的框架。例如,可視化的開(kāi)發(fā)工具使你能拖放組件到容器中,這些容器能調(diào)整大小和位置。軟件組件模型描述了如何開(kāi)發(fā)和使用組件。軟件組件模型包括以下元素: 創(chuàng)造和使用組件的規(guī)范;軟件實(shí)現(xiàn)規(guī)范,為建造和使用組件提供
3、一種具體的機(jī)制。JavaBean規(guī)范將“軟件組件”的概念引入到Java編程的領(lǐng)域。組件是自包含的、可重用的軟件單元;而JavaBean組件,則可以使用可視的應(yīng)用程序開(kāi)發(fā)工具,可視地將它們編寫(xiě)到Java程序中。JavaBean規(guī)范為Java開(kāi)發(fā)人員提供了一種“組件化”其Java類的方法。,Bean開(kāi)發(fā)工具,JavaSoft,開(kāi)發(fā)Java系列開(kāi)發(fā)工具的公司,開(kāi)發(fā)了BDK (Bean開(kāi)發(fā)工具)。 BDK可供開(kāi)發(fā)者自由地使用,適用于Wind
4、ows 2000、XP、2003、以及Solaris 2.4和2.5。其它用于Bean開(kāi)發(fā)的各種工具,常用的有7個(gè)。Sun MicroSystems公司的JavaPlan;Sun MicroSystems公司的Java Studio;Sun MicroSystems公司的Java Workshop ;IBM的Visual Age for Java ;Symantec的Visual Café for Java ;
5、微軟公司的Visual J++;Boland公司的Jbuilder。,JavaBean簡(jiǎn)介,JavaBean是一種軟件組件模型。它與其它軟件對(duì)象相互作用,決定如何建立和重用軟件組件。這些可重用軟件組件被稱之為Bean。Bean使用現(xiàn)有的Bean幫助開(kāi)發(fā)新的計(jì)劃,進(jìn)而,建立它們之間的關(guān)系。在Sun公司的Java Bean規(guī)范的定義中,Bean的正式說(shuō)法是:“Bean是一個(gè)基于Sun公司的JavaBean規(guī)范的、可在編程工具中被可視化
6、處理的可復(fù)用的軟件組件”。JavaBean是基于Sun公司的JavaBean規(guī)范的,可在編程工具中被可視化處理的可復(fù)用的軟件組件。因此JavaBean具有4個(gè)基本特性:(1)獨(dú)立性(2)可重用性(3)在可視化開(kāi)發(fā)工具中使用(4)狀態(tài)可以保存,JavaBean編程,JavaBean分成可視組件和非可視組件。在JSP中主要使用非可視組件,對(duì)于非可視組件,不必去設(shè)計(jì)它的外觀,主要關(guān)心它的屬性和方法。,JavaBean的特點(diǎn),編寫(xiě)JavaB
7、ean就是編寫(xiě)一個(gè)Java類,所以只要會(huì)寫(xiě)類就能編寫(xiě)一個(gè)Bean,一個(gè)完整JavaBean在類的命名上需要遵守4點(diǎn)。1、如果類的成員變量的名字是xxx,那么為了更改或獲取成員變量的值,在類中使用兩個(gè)方法:getXxx(),用來(lái)獲取屬性xxx。setXxx(),用來(lái)修改屬性xxx。2、對(duì)于boolean類型的成員變量,允許使用is代替get和set。3、類中方法的訪問(wèn)屬性必須是public的。4、類中如果有構(gòu)造方法,那么這個(gè)
8、構(gòu)造方法也是public的,并且是無(wú)參數(shù)的。,JavaBean頁(yè)面指令,在JSP中專門(mén)提供三個(gè)頁(yè)面指令來(lái)和JavaBean交互,分別是jsp:useBean指令、jsp:setProperty指令和jsp:getProperty指令。jsp:useBean指令指定JSP頁(yè)面中包括的JavaBean,具體的語(yǔ)法格式為:,,JavaBean頁(yè)面指令,其中,id是當(dāng)前頁(yè)面中引用JavaBean的名字,JSP頁(yè)面中的Java代碼將使用這個(gè)名
9、字來(lái)訪問(wèn)JavaBean。scope:指定JavaBean的作用范圍,可以取4個(gè)值。page:JavaBean只能在當(dāng)前頁(yè)面中使用。在JSP頁(yè)面執(zhí)行完畢后,該JavaBean將會(huì)被進(jìn)行垃圾回收。request:JavaBean在相臨的兩個(gè)頁(yè)面中有效。session:JavaBean在整個(gè)用戶會(huì)話過(guò)程中都有效。application:JavaBean在當(dāng)前整個(gè)Web應(yīng)用的范圍內(nèi)有效。jsp:setProperty指令功能是設(shè)置
10、JavaBean的屬性。jsp:getProperty操作指令功能是得到某個(gè)JavaBean的屬性值。,編寫(xiě)JavaBean,,案例名稱:簡(jiǎn)單的JavaBean程序名稱:j6_01.java,案例名稱:調(diào)用JavaBean方法一程序名稱:j6_02.jsp,案例名稱:調(diào)用JavaBean方法二程序名稱:j6_03.jsp,案例名稱:調(diào)用JavaBean方法三程序名稱:j6_04.jsp,注意:方法一在有些Tomcat上可能執(zhí)行失
11、敗,方法二和方法三完全通過(guò)!,JavaBean的屬性,通用Bean屬性的類型有四種:簡(jiǎn)單屬性、關(guān)聯(lián)屬性、受限屬性和索引索性。簡(jiǎn)單(Simple)屬性:該屬性解釋怎樣把屬性賦予Bean。關(guān)聯(lián)(Bound)屬性:一個(gè)Bound屬性是指當(dāng)該種屬性的值發(fā)生變化時(shí),要通知其它的對(duì)象。受限(Constrained)屬性:指當(dāng)這個(gè)屬性的值要發(fā)生變化時(shí),與這個(gè)屬性已建立了某種連接的其它Java對(duì)象可以否決屬性值的改變。索引(Indexed)屬性
12、:一個(gè)Indexed屬性可描述多值的屬性,用一個(gè)數(shù)組表示。,帶屬性的JavaBean,案例名稱:帶屬性的JavaBean程序名稱:j6_05.java,案例名稱:修改JavaBean的屬性方法一程序名稱:j6_06.jsp,案例名稱:修改JavaBean的屬性方法二程序名稱:j6_07.jsp,利用外部的Bean,JSP之所以強(qiáng)大,很大程度上依賴于外部組件的使用。有很多著名的公司開(kāi)發(fā)外部Bean組件,比如SUN公司和IBM公司
13、等。本節(jié)介紹最常用的組件:Email組件、圖形組件和文件上傳組件,Email組件,JavaMail API 是一個(gè)用于閱讀、編寫(xiě)和發(fā)送電子郵件的可選包(標(biāo)準(zhǔn)擴(kuò)展)。在JSP中要想發(fā)送Email,需要實(shí)用JavaMail組件。這里需要兩個(gè)組件“activation.jar”和“mail.jar”,,發(fā)送Email,需要根據(jù)實(shí)際修改五個(gè)參數(shù),程序才可以正確執(zhí)行,目前的SMTP郵件發(fā)送服務(wù)器都需要驗(yàn)證。驗(yàn)證需要設(shè)置三個(gè)參數(shù),發(fā)送郵件的服務(wù)器地
14、址strHost、驗(yàn)證用戶名strUserName和strPassWord密碼String strHost = "smtp.163.net";String strUserName = "szg";String strPassWord ="szg";,案例名稱: 發(fā)送Email程序名稱:mail.jsp,發(fā)送Email,還需要修改兩個(gè)參數(shù)就是發(fā)送人地址和收信人地址
15、。String strFrom = "shizhiguo@163.net";String strToList = "shizhiguo@tom.com";比如現(xiàn)在張三有一個(gè)郵箱是zhangsan@163.net,郵箱密碼是mamahao,現(xiàn)在他要給周潤(rùn)發(fā)發(fā)郵件,周潤(rùn)發(fā)的郵箱是zhourunfa@163.com。改完的五個(gè)參數(shù)如下面的代碼段。String strHost = "
16、;smtp.163.net";int nPort = 0;String strUserName = "zhangsan";String strPassWord ="mamahao";String strFrom = "zhangsan@163.net";String strToList = zhourunfa@163.com";,常見(jiàn)郵箱
17、的SMTP地址,發(fā)送Email,繪制圖形,在Java圖形編程領(lǐng)域中,最著名的組件是JGraph組件,該組件在繪制二維和三維方面功能非常優(yōu)秀。最新的JGraph組件可以從“http://prdownloads.sourceforge.net/jgraph/”下載,該組件大約130K,,使用JGraph繪圖,案例名稱:使用JGraph繪圖程序名稱:j6_09.java,文件上傳,在Web開(kāi)發(fā)中,文件上傳是一項(xiàng)非常實(shí)用的功能在Java開(kāi)
18、發(fā)體系中,文件上傳功能的實(shí)現(xiàn)主要依賴于JavaBean,常用的上傳組件是jspsmart,以jspsmart組件為例進(jìn)行介紹文件上傳,使用jspsmart組件實(shí)現(xiàn)文件上傳,,案例名稱:文件上傳功能的實(shí)現(xiàn)程序名稱:selectfile.html文件名稱:存儲(chǔ)到服務(wù)器上的路徑:,使用jspsmart組件實(shí)現(xiàn)文件上傳,案例名稱:處理文件上傳的Servlet程序程序名稱:servletUpload.java,自定義JS
19、P標(biāo)記庫(kù),在JSP規(guī)范1.1版中增加了自定義標(biāo)記庫(kù),允許開(kāi)發(fā)人員在自定義的標(biāo)記符中封裝復(fù)雜的功能。定制標(biāo)記使得JSP項(xiàng)目中很容易創(chuàng)建重用的代碼模塊,使用自定義標(biāo)記庫(kù),在使用自定義標(biāo)記庫(kù)時(shí),主要分為以下3個(gè)步驟:(1)建立一個(gè)TLD(Tag Library Descriptor)文件,指定標(biāo)記庫(kù)中哪一個(gè)標(biāo)記與哪一個(gè)處理程序相匹配。這是一種很簡(jiǎn)單的XML文件,TLD文件描述和說(shuō)明了屬性、信息和標(biāo)記處理器文件位置等信息。JSP 容器使用這一
20、文件來(lái)映射被調(diào)用標(biāo)記庫(kù)的位置和用法。(2)建立一個(gè)對(duì)標(biāo)記的處理程序。處理程序本身也是一個(gè)Java類。這是標(biāo)記庫(kù)的真正核心。JSP頁(yè)面把頁(yè)面上設(shè)置的標(biāo)記屬性都傳遞給標(biāo)記處理器,JSP頁(yè)面上的標(biāo)記標(biāo)示的內(nèi)容也是這樣處理的。當(dāng)標(biāo)記處理器完成其處理過(guò)程,它就會(huì)把處理后的輸出結(jié)果回送給JSP頁(yè)面做進(jìn)一步處理。(3)在JSP頁(yè)面中使用標(biāo)記。在JSP頁(yè)面中首先聲明標(biāo)記庫(kù),然后再使用它。,創(chuàng)建并使用標(biāo)記庫(kù),案例名稱:TLD配置文件程序名稱:m
21、ytld.tld,案例名稱:處理自定義標(biāo)記的Java類程序名稱:MyTagLib.java,案例名稱:使用自定義標(biāo)記庫(kù)的JSP頁(yè)面程序名稱:exampletag.jsp,面向?qū)ο笤O(shè)計(jì)模式,面向?qū)ο筌浖_(kāi)發(fā)領(lǐng)域中,設(shè)計(jì)模式包括一些規(guī)則來(lái)完成一定任務(wù)。設(shè)計(jì)模式針對(duì)一些特定的問(wèn)題,提出一種解決方案。常用的面向?qū)ο笤O(shè)計(jì)模式有4種:Factory模式、Singleton模式、Façade模式和MVC架構(gòu)模式。,Factory模式
22、,如果想要通過(guò)Email發(fā)送一些新產(chǎn)品的信息,目標(biāo)用戶的類型不同,所以需要發(fā)送不同內(nèi)容的郵件。除此之外,用戶的類型還可能會(huì)不斷的增加。一般這種需求利用Factory模式設(shè)計(jì)。定義一個(gè)EmailSender類。,class EmailSender{void sendEMail(SeniorClientType client){SeniorClientEmail email = new SeniorClientEmail();
23、email.createEmailBody();email.createEmailSubject();…email.send();}void sendEMail(RichClientType client){RichClientEmail email = new RichClientEmail();email.createEmailBody();email.createEmailSubject
24、();…email.send();}void sendEMail(FemaleClientType client){FemalClientEmail email = new FemaleClientEmail();email.createEmailBody();email.createEmailSubject();…email.send();}},Factory模式,根據(jù)sendEMa
25、il傳遞的參數(shù)類型,創(chuàng)建不同的發(fā)送Email的對(duì)象,然后利用該對(duì)象的方法進(jìn)行處理。創(chuàng)建的Email類為:,class SeniorClientEmail{void createEmailBody(){…}void createEmailSubject(){…}void send(){…}}class RichClientEmail{void createEmailBody(){…}void createEmail
26、Subject(){…}void send(){…}},Factory模式,如果要添加新的客戶類型。只要修改EmailSender類,添加一種新的客戶類型方法就可以。Factory模式建立的系統(tǒng)擴(kuò)充性非常好。進(jìn)一步抽象,利用接口或者抽象類,將公共的一些特征抽象成接口或者抽象類,將一些細(xì)節(jié)留給派生類處理。設(shè)計(jì)的Email類為,class EmailSender{Void sendEmail( IClientType clie
27、nt){Iemail email = client.createEmail();email.createEmailBody();email.createEmailSubject();email.send();},Factory模式,不同的客戶類型利用不同的類進(jìn)行處理,抽象這些客戶的一些共同特征,建立接口IClientType,具體的客戶類型處理類都通過(guò)這個(gè)接口創(chuàng)建。,Interface IClientType{
28、IEmail createEmail();}class SeniorClientType implements IClientType{IEmail createEmail(){return new SeniorClientEmail();}class RichClientType implements IClientType{IEmail createEmail() { return new RichClientE
29、mail();},Factory模式,同時(shí)提取不同的Email類型的一些共同特征,建立接口IEmail,具體的類都通過(guò)這個(gè)接口創(chuàng)建。,interface IEmail{void createEmailBody();void createEmailSubject();void send();}class SeniorClientType implements IEmail{void createEmailBody()
30、{…}void createEmailSubject(){…}void send();}class RichClientType implements IEmail{void createEmailBody(){…}void createEmailSubject(){…}void send();},Singleton模式,數(shù)據(jù)庫(kù)管理系統(tǒng)DB2和Oracle有連接數(shù)目的限制,在默認(rèn)的情況下,DB2是50用戶,Or
31、acle是100用戶,如果超過(guò)這個(gè)數(shù)據(jù)的話,程序就會(huì)出現(xiàn)異常。利用類ConnectionPoolManager來(lái)保證連接數(shù)不被超過(guò)。,Singleton模式,,class ConnectionPoolManager{static ConnectionPoolManager instance = null;int numberofConnection = 0;int maxConnection = 50;private
32、 ConnectionPoolManager(){};public static ConnectionPoolManager getConnectionPoolManager(){if(instance == null){instance = new ConnectionPoolManager();}return instance}public DBConnection getConnection(
33、){if ((numberOfConnection < maxConnection)){return createNewConnection();}else{sleep(3000);getConnection();}},Façade模式,比如要保存一個(gè)帳戶的信息,第一步需要得到數(shù)據(jù)連接對(duì)象,第二步需要解析客戶信息和帳戶信息,第三步根據(jù)需要存儲(chǔ)的內(nèi)容生成不同的SQL語(yǔ)句,第四步
34、執(zhí)行SQL語(yǔ)句。過(guò)程比較繁雜。利用Façade模式:將所有的處理流程進(jìn)行封裝,只向外提供一個(gè)方法,實(shí)現(xiàn)所有的功能。,MVC架構(gòu)模式,Model-View-Controller架構(gòu)模式是80年代中期在Smalltalk-80 GUI(一種經(jīng)典的面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言)實(shí)驗(yàn)室發(fā)明的。根據(jù)MVC模式,一個(gè)軟件應(yīng)該將商務(wù)邏輯(Model)和顯示(View)分開(kāi)。分開(kāi)有許多好處,最主要的有兩個(gè)方面:1、同一的商務(wù)邏輯層(Mode
35、l)可能會(huì)對(duì)應(yīng)多個(gè)顯示層(View),如果商務(wù)邏輯層和顯示層放在一起的話,再添加一個(gè)顯示層的時(shí)候就會(huì)極大的增加組件的復(fù)雜性。一個(gè)商務(wù)邏輯對(duì)著兩個(gè)顯示層的例子是:銀行的帳戶的商務(wù)邏輯層對(duì)應(yīng)ATM和Internet兩個(gè)顯示層。2、通常情況下,每次修改顯示層的時(shí)候一般并不需要修改商務(wù)邏輯層。,MVC架構(gòu)模式,Model層一般利用Façade模式進(jìn)行設(shè)計(jì),在復(fù)雜的商務(wù)邏輯上,提供簡(jiǎn)單并且統(tǒng)一的應(yīng)用程序接口。這一層負(fù)責(zé)管理應(yīng)用程序應(yīng)用
36、程序的行為和狀態(tài),來(lái)響應(yīng)狀態(tài)的請(qǐng)求和改變狀態(tài)的指令。View層:從Model層和Controler層獲取數(shù)據(jù),并按照某種方式顯示給用戶。Controller層的功能是捕捉用戶的一些事件,并根據(jù)用戶和應(yīng)用程序的狀態(tài)來(lái)決定響應(yīng)的類型。Controller層的響應(yīng)會(huì)同時(shí)影響到View層和Model層。,MVC中三層的關(guān)系,JSP設(shè)計(jì)模式,JSP設(shè)計(jì)模式包括兩個(gè):(1)Model1,JSP+JavaBean設(shè)計(jì)模式(2)Model2,M
37、VC設(shè)計(jì)模式,模式一JSP+JavaBean模式,在這種模式中,JSP頁(yè)面獨(dú)自響應(yīng)請(qǐng)求并將處理結(jié)果返回客戶,所有的數(shù)據(jù)庫(kù)操作通過(guò)JavaBean來(lái)實(shí)現(xiàn)。大量地使用這種模式,常會(huì)導(dǎo)致在JSP頁(yè)面中嵌入大量的Java代碼,當(dāng)需要處理的商業(yè)邏輯非常復(fù)雜時(shí),這種情況就會(huì)變得很糟糕。大量的Java代碼使得JSP頁(yè)面變得非常臃腫。前端的頁(yè)面設(shè)計(jì)人員稍有不慎,就有可能破壞關(guān)系到商業(yè)邏輯的代碼。這種情況在大型項(xiàng)目中經(jīng)常出現(xiàn),造成了代碼開(kāi)發(fā)和維護(hù)
38、的困難,同時(shí)會(huì)導(dǎo)致項(xiàng)目管理的困難。因此這種模式只適用于中小規(guī)模的項(xiàng)目。,模式二MVC模式,“MVC”模式即是:“Model-View-Controller”模式。在這種模式中,通過(guò)JSP技術(shù)來(lái)表現(xiàn)頁(yè)面,通過(guò)Servlet技術(shù)來(lái)完成大量的事務(wù)處理工作,實(shí)現(xiàn)用戶的商業(yè)邏輯。在這種模式中,Servlet用來(lái)處理請(qǐng)求的事務(wù),充當(dāng)了控制器(Controller即“C”)的角色,Servlet負(fù)責(zé)響應(yīng)客戶對(duì)業(yè)務(wù)邏輯的請(qǐng)求并根據(jù)用戶的請(qǐng)求行為,決
39、定將哪個(gè)JSP頁(yè)面發(fā)送給客戶。JSP頁(yè)面處于表現(xiàn)層,也就是視圖(View即“V”)的角色。JavaBean則負(fù)責(zé)數(shù)據(jù)的處理,也就是模型(Model即“M”)的角色,模式二MVC模式,MVC在JSP中的實(shí)現(xiàn)模型,目前有兩種實(shí)現(xiàn)模型:(1)基于Bean的MVC模型。(2)基于Stucts的MVC模型。,基于Bean的MVC模型,Bean可以利用JavaBean實(shí)現(xiàn),也可以利用EJB來(lái)實(shí)現(xiàn),分別構(gòu)成的系統(tǒng)是:JavaBean(M)+JS
40、P(V)+ServletEJB(M)+JSP(V)+Servlet(C)實(shí)現(xiàn)。,MVC模型案例,用戶首先請(qǐng)求頁(yè)面login.html,login.html會(huì)要求用戶輸入用戶名和密碼。輸入的用戶名和密碼會(huì)POST到validate.jsp,validate.jsp使用bean: mypackage.validate,來(lái)驗(yàn)證用戶名和密碼是否正確。如果驗(yàn)證沒(méi)有通過(guò),則顯示error.jsp頁(yè)面,顯示錯(cuò)誤信息。如果驗(yàn)證通過(guò),則轉(zhuǎn)到servl
41、et: mypackage.forky。mypackage.forky根據(jù)用戶名轉(zhuǎn)到不同的頁(yè)面。如果用戶名為teacher,則轉(zhuǎn)到teacher.jsp;否則轉(zhuǎn)到student.jsp文件。,目錄結(jié)構(gòu),基于Struts的MVC模型,Struts是Apache組織的一個(gè)項(xiàng)目,像其他的Apache組織的項(xiàng)目一樣,它也是開(kāi)放源碼項(xiàng)目。Struts是一個(gè)比較好的MVC框架提供了對(duì)開(kāi)發(fā)MVC系統(tǒng)的底層支持,它采用的主要技術(shù)是Servlet,J
42、SP和custom tag library。,基于Struts的MVC模型,Struts 是一組相互協(xié)作的類、Servlet 和 JSP 標(biāo)記,它們組成一個(gè)可重用的MVC設(shè)計(jì)。這個(gè)定義表示Struts是一個(gè)框架,而不是一個(gè)庫(kù),但Struts也包含了豐富的標(biāo)記庫(kù)和獨(dú)立于該框架工作的實(shí)用程序類。Struts的基本結(jié)構(gòu)如圖所示。,小結(jié),本章介紹組件開(kāi)發(fā)技術(shù)。簡(jiǎn)要介紹組件的基本概念JavaBean的編寫(xiě)以及調(diào)用方法JavaBean的屬性
43、介紹常用的外部組件:發(fā)送Email組件文件上傳圖形組件。介紹JSP標(biāo)記庫(kù)的編寫(xiě)以及使用介紹Java設(shè)計(jì)模式以及JSP設(shè)計(jì)模式。,本章習(xí)題,6-1 什么是組件?使用組件有什么優(yōu)點(diǎn)?6-2 編寫(xiě)JavaBean的時(shí)候,要注意哪些?6-3 使用Email組件發(fā)送Email。(上機(jī)完成)6-4 使用上傳組件編寫(xiě)照片上傳程序。(上機(jī)完成)6-5 編寫(xiě)標(biāo)記庫(kù)顯示系統(tǒng)時(shí)間。(上機(jī)完成,提示:修改案例6-3實(shí)現(xiàn))6-6 簡(jiǎn)述常用的面
溫馨提示
- 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- web程序設(shè)計(jì)_第6章__web數(shù)據(jù)庫(kù)程序設(shè)計(jì)
- c語(yǔ)言程序設(shè)計(jì)第6章課件-
- 《visual c#程序設(shè)計(jì)教程與上機(jī)指導(dǎo)》第6章windows程序設(shè)計(jì)
- 第4章 程序設(shè)計(jì).PDF
- 第4章 程序設(shè)計(jì).PDF
- c語(yǔ)言程序設(shè)計(jì)ppt-第2版-第7章-指針程序設(shè)計(jì)
- 第4章arm程序設(shè)計(jì)基礎(chǔ)
- c語(yǔ)言程序設(shè)計(jì)第8章
- c語(yǔ)言程序設(shè)計(jì)ppt課件_第2章_簡(jiǎn)單程序設(shè)計(jì)-
- Java程序設(shè)計(jì) 6章_ppt.txt
- 第3章java語(yǔ)言程序設(shè)計(jì)基礎(chǔ)
- Java程序設(shè)計(jì) 6章_ppt.txt
- 第7章 jsp與javabean
- java程序設(shè)計(jì)決賽試題(第6屆)
- 第5章-數(shù)論中的程序設(shè)計(jì)
- 第02章c語(yǔ)言程序設(shè)計(jì)基礎(chǔ)
- 《高級(jí)語(yǔ)言程序設(shè)計(jì)》第14章在線測(cè)試
- java程序設(shè)計(jì)基礎(chǔ)第2章陳國(guó)君
- web_《web高級(jí)程序設(shè)計(jì)教程》第2章__web程序設(shè)計(jì)的基礎(chǔ)
- 第10章面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言
評(píng)論
0/150
提交評(píng)論