




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于Struts框架實(shí)現(xiàn)企業(yè)級(jí)WEB應(yīng)用第一章Struts1基礎(chǔ)入門課程介紹學(xué)習(xí)內(nèi)容MVC MVC 優(yōu)缺點(diǎn)優(yōu)缺點(diǎn)Struts Struts 概述概述StrutsStruts入門示例入門示例使用使用MyEclipseMyEclipse快速開(kāi)發(fā)快速開(kāi)發(fā)StrutsStruts應(yīng)用程序應(yīng)用程序能力目標(biāo)掌握掌握Struts1Struts1體系結(jié)構(gòu)體系結(jié)構(gòu)理解理解Struts1Struts1工作原理工作原理掌握掌握Struts-config.xmlStruts-config.xml文件的配置文件的配置掌握使用掌握使用Struts1Struts1框架開(kāi)發(fā)框架開(kāi)發(fā)WebWeb應(yīng)用程序的方應(yīng)用程序的方法法1.
2、 MVC優(yōu)缺點(diǎn)JSPJSP開(kāi)發(fā)技術(shù)標(biāo)準(zhǔn)提出的兩種設(shè)計(jì)模式開(kāi)發(fā)技術(shù)標(biāo)準(zhǔn)提出的兩種設(shè)計(jì)模式Model1Model1:Model1Model1設(shè)計(jì)模式是設(shè)計(jì)模式是JSP+JavaBeanJSP+JavaBean的開(kāi)發(fā)模式的開(kāi)發(fā)模式Model2Model2:Model2Model2設(shè)計(jì)模式是設(shè)計(jì)模式是JSP+JavaBean+ServletJSP+JavaBean+Servlet的開(kāi)的開(kāi)發(fā)模式發(fā)模式1. MVC優(yōu)缺點(diǎn)Model1Model1模式模式該模式適用于小型的該模式適用于小型的WebWeb應(yīng)用程序的開(kāi)發(fā)應(yīng)用程序的開(kāi)發(fā) JavaBeanJavaBean通常用于處理具體的業(yè)務(wù)數(shù)據(jù)通常用于處理具體的業(yè)
3、務(wù)數(shù)據(jù)JSPJSP負(fù)責(zé)接收用戶請(qǐng)求,調(diào)用相應(yīng)的負(fù)責(zé)接收用戶請(qǐng)求,調(diào)用相應(yīng)的JavaBeanJavaBean完成業(yè)務(wù)完成業(yè)務(wù)邏輯,并將處理結(jié)果返回給用戶邏輯,并將處理結(jié)果返回給用戶客戶端數(shù)據(jù)庫(kù)請(qǐng)求JSP頁(yè)面JavaBean請(qǐng)求在在Model1Model1設(shè)計(jì)模式中,設(shè)計(jì)模式中,JSPJSP不僅需要進(jìn)行程序中不僅需要進(jìn)行程序中大部分的流程控制,還需要負(fù)責(zé)頁(yè)面顯示大部分的流程控制,還需要負(fù)責(zé)頁(yè)面顯示JSPJSP技術(shù)標(biāo)準(zhǔn)推出了技術(shù)標(biāo)準(zhǔn)推出了Model2Model2模式,該模式在模式,該模式在JSP+JavaBeanJSP+JavaBean的設(shè)計(jì)模式基礎(chǔ)上加入的設(shè)計(jì)模式基礎(chǔ)上加入ServletServl
4、et來(lái)來(lái)實(shí)現(xiàn)程序控制層實(shí)現(xiàn)程序控制層在在Model2Model2設(shè)計(jì)模式中,設(shè)計(jì)模式中,由由ServletServlet控制程序流程,控制程序流程,由由JavaBeanJavaBean實(shí)現(xiàn)業(yè)務(wù)邏輯,實(shí)現(xiàn)業(yè)務(wù)邏輯,由由JSPJSP負(fù)責(zé)數(shù)據(jù)顯示負(fù)責(zé)數(shù)據(jù)顯示Model2優(yōu)缺點(diǎn) Model2 Model2中中MVCMVC設(shè)計(jì)模式的工作流程設(shè)計(jì)模式的工作流程執(zhí)行Servlet接收客戶端請(qǐng)求,并調(diào)用業(yè)務(wù)類的方法進(jìn)行數(shù)據(jù)處理Servlet根據(jù)數(shù)據(jù)處理的結(jié)果,控制下一個(gè)顯示的HTML或者JSP頁(yè)面ServletJSP頁(yè)面轉(zhuǎn)向JavaBean調(diào)用Model2簡(jiǎn)介數(shù)據(jù)庫(kù)Model2及其優(yōu)勢(shì)多個(gè)視圖可以對(duì)應(yīng)一個(gè)模型
5、。多個(gè)視圖可以對(duì)應(yīng)一個(gè)模型。按按 MVC MVC 設(shè)計(jì)模式,一個(gè)模型對(duì)應(yīng)多個(gè)視圖能夠減少代設(shè)計(jì)模式,一個(gè)模型對(duì)應(yīng)多個(gè)視圖能夠減少代碼的復(fù)制量以及維護(hù)量。一旦模型發(fā)生改變,也易于維碼的復(fù)制量以及維護(hù)量。一旦模型發(fā)生改變,也易于維護(hù)護(hù)模型返回的數(shù)據(jù)與顯示邏輯分離。模型返回的數(shù)據(jù)與顯示邏輯分離。模型數(shù)據(jù)可以應(yīng)用任何的顯示技術(shù),例如使用模型數(shù)據(jù)可以應(yīng)用任何的顯示技術(shù),例如使用JSP JSP 頁(yè)面、頁(yè)面、 Velocity Velocity 模板或者直接產(chǎn)生模板或者直接產(chǎn)生 Excel Excel 文檔等文檔等應(yīng)用程序被分隔為應(yīng)用程序被分隔為3 3層,降低了層間的耦合,提供層,降低了層間的耦合,提供了應(yīng)
6、用的可擴(kuò)展性了應(yīng)用的可擴(kuò)展性MVC MVC 更符合軟件的工程化管理精神。更符合軟件的工程化管理精神。不同的層各司其職,各層的組件具有相同的特征,有利不同的層各司其職,各層的組件具有相同的特征,有利于通過(guò)工程化與工具化產(chǎn)生管理程序代碼于通過(guò)工程化與工具化產(chǎn)生管理程序代碼 Model2及其缺點(diǎn)Model2Model2控制器太多,不能復(fù)用控制器太多,不能復(fù)用開(kāi)發(fā)效率低開(kāi)發(fā)效率低結(jié)構(gòu)不一致。結(jié)構(gòu)不一致。什么是框架技術(shù)“框架技術(shù)框架技術(shù)”幫我們更幫我們更快快更更好好地構(gòu)建程序:地構(gòu)建程序:是一個(gè)應(yīng)用程序的半成品是一個(gè)應(yīng)用程序的半成品提供可重用的公共結(jié)構(gòu),相當(dāng)于利用框架完成了提供可重用的公共結(jié)構(gòu),相當(dāng)于利
7、用框架完成了部分基礎(chǔ)工作,開(kāi)發(fā)者只需要集中精力完成系統(tǒng)的部分基礎(chǔ)工作,開(kāi)發(fā)者只需要集中精力完成系統(tǒng)的業(yè)務(wù)邏輯設(shè)計(jì)業(yè)務(wù)邏輯設(shè)計(jì)按一定規(guī)則組織的一組組件按一定規(guī)則組織的一組組件優(yōu)勢(shì):優(yōu)勢(shì):不用再考慮公共問(wèn)題不用再考慮公共問(wèn)題專心在業(yè)務(wù)實(shí)現(xiàn)上專心在業(yè)務(wù)實(shí)現(xiàn)上結(jié)構(gòu)統(tǒng)一,易于學(xué)習(xí)、維護(hù)結(jié)構(gòu)統(tǒng)一,易于學(xué)習(xí)、維護(hù)新手也可寫出好程序新手也可寫出好程序 直接組裝汽車,不用自己造輪子直接組裝汽車,不用自己造輪子站在巨人的肩膀上,享用前人經(jīng)驗(yàn)和智慧站在巨人的肩膀上,享用前人經(jīng)驗(yàn)和智慧2. Struts 概述現(xiàn)今比較流行的開(kāi)源框架現(xiàn)今比較流行的開(kāi)源框架StrutsStruts是實(shí)現(xiàn)是實(shí)現(xiàn)MVCMVC設(shè)計(jì)模式的一個(gè)優(yōu)秀
8、框架,它定義了設(shè)計(jì)模式的一個(gè)優(yōu)秀框架,它定義了通用的控制器,通過(guò)配置文件與視圖,以通用的控制器,通過(guò)配置文件與視圖,以ActionAction的概念的概念對(duì)用戶請(qǐng)求進(jìn)行封裝,使代碼更清晰易讀對(duì)用戶請(qǐng)求進(jìn)行封裝,使代碼更清晰易讀HibernateHibernate是一個(gè)數(shù)據(jù)持久化框架,能夠使開(kāi)發(fā)者以面是一個(gè)數(shù)據(jù)持久化框架,能夠使開(kāi)發(fā)者以面向?qū)ο蟮姆绞饺ゲ僮麝P(guān)系型數(shù)據(jù)庫(kù),極大地提高了數(shù)據(jù)向?qū)ο蟮姆绞饺ゲ僮麝P(guān)系型數(shù)據(jù)庫(kù),極大地提高了數(shù)據(jù)層的開(kāi)發(fā)效率層的開(kāi)發(fā)效率SpringSpring是一個(gè)輕量級(jí)的框架,主要作為依賴注入容器是一個(gè)輕量級(jí)的框架,主要作為依賴注入容器與與AOPAOP實(shí)現(xiàn)存在。實(shí)現(xiàn)存在。S
9、pringSpring相當(dāng)于一個(gè)大型工廠,創(chuàng)建并相當(dāng)于一個(gè)大型工廠,創(chuàng)建并管理應(yīng)用程序中的組件,從而降低組件間的依賴性,實(shí)管理應(yīng)用程序中的組件,從而降低組件間的依賴性,實(shí)現(xiàn)低耦合,提高了應(yīng)用程序的可維護(hù)性、可擴(kuò)展性現(xiàn)低耦合,提高了應(yīng)用程序的可維護(hù)性、可擴(kuò)展性2.2 什么是Struts框架Struts Struts 是是 Apache Apache 軟件基金組織軟件基金組織 Jakarta Jakarta 項(xiàng)目的項(xiàng)目的一個(gè)子項(xiàng)目一個(gè)子項(xiàng)目 Struts Struts 的前身是的前身是 CraigR.McClanahan CraigR.McClanahan 編寫的編寫的 JSP JSP Model
10、2 Model2 架構(gòu)架構(gòu) 使用使用 Struts Struts 可以更好地遵循可以更好地遵循 MVC MVC 模式模式 Struts Struts 提供了一套完備的規(guī)范以及基礎(chǔ)類庫(kù),具提供了一套完備的規(guī)范以及基礎(chǔ)類庫(kù),具有很強(qiáng)的可擴(kuò)展性,可以充分利用有很強(qiáng)的可擴(kuò)展性,可以充分利用 JSP/Servlet JSP/Servlet 的優(yōu)點(diǎn),從而減輕程序員的工作量的優(yōu)點(diǎn),從而減輕程序員的工作量Struts Struts 框架在面世時(shí)立即引起了框架在面世時(shí)立即引起了 Java Java 開(kāi)發(fā)者的開(kāi)發(fā)者的廣泛關(guān)注,并在全世界內(nèi)推廣開(kāi)來(lái),最終成為應(yīng)用廣泛關(guān)注,并在全世界內(nèi)推廣開(kāi)來(lái),最終成為應(yīng)用最廣泛的最
11、廣泛的MVC MVC 框架框架 模型(模型(ModelModel)部分)部分Struts1Struts1的模型部分由的模型部分由JavaBeanJavaBean組成。組成。JavaBeanJavaBean封裝了封裝了底層的業(yè)務(wù)邏輯,包括數(shù)據(jù)庫(kù)訪問(wèn)等底層的業(yè)務(wù)邏輯,包括數(shù)據(jù)庫(kù)訪問(wèn)等視圖(視圖(ViewView)部分)部分Struts1Struts1的視圖部分采用的視圖部分采用 JSP JSP 實(shí)現(xiàn)實(shí)現(xiàn)ActionFormActionForm用于封裝用戶請(qǐng)求參數(shù),所有用戶請(qǐng)求參數(shù)用于封裝用戶請(qǐng)求參數(shù),所有用戶請(qǐng)求參數(shù)由系統(tǒng)自動(dòng)封裝為由系統(tǒng)自動(dòng)封裝為ActionFormActionForm對(duì)象。該對(duì)
12、象被對(duì)象。該對(duì)象被ActionServletActionServlet轉(zhuǎn)發(fā)給轉(zhuǎn)發(fā)給ActionAction,然后,然后ActionAction根據(jù)根據(jù)ActionFormActionForm中的請(qǐng)求參數(shù)處理用戶請(qǐng)求中的請(qǐng)求參數(shù)處理用戶請(qǐng)求 2.3 Struts1的體系結(jié)構(gòu)2.3 Struts1的體系結(jié)構(gòu)控制器(控制器(ControllerController)部分)部分系統(tǒng)核心控制器(系統(tǒng)核心控制器(ActionServletActionServlet):負(fù)責(zé)):負(fù)責(zé)攔截所有攔截所有HTTPHTTP請(qǐng)求,然后根據(jù)用戶請(qǐng)求調(diào)請(qǐng)求,然后根據(jù)用戶請(qǐng)求調(diào)用業(yè)務(wù)邏輯控制器(用業(yè)務(wù)邏輯控制器(Action
13、Action)業(yè)務(wù)邏輯控制器(業(yè)務(wù)邏輯控制器(ActionAction):業(yè)務(wù)邏輯控):業(yè)務(wù)邏輯控制器負(fù)責(zé)處理用戶請(qǐng)求,但是其本身并不制器負(fù)責(zé)處理用戶請(qǐng)求,但是其本身并不具有處理能力,而是調(diào)用具有處理能力,而是調(diào)用 Model Model 來(lái)完成處來(lái)完成處理理 2.3 Struts1的體系結(jié)構(gòu)瀏覽器Web服務(wù)器(核心控制器)ActionServlet(視圖)JSPStruts-config.xml(業(yè)務(wù)邏輯控制器)Action(業(yè)務(wù)邏輯控制器)Action(模型)JavaBeanEJBServlet/JSP容器(業(yè)務(wù)邏輯控制器)Action2.4 Struts1 運(yùn)行流程ActionServl
14、etJSP頁(yè)面頁(yè)面ActionForm客戶端客戶端JavaBeanStruts-config.xmlAction1. HTTP請(qǐng)求2. 填充FormBean3. 轉(zhuǎn)發(fā)HTTP請(qǐng)求4. 調(diào)用ActionForm5. 調(diào)用JavaBean6. 回送ActionForward7. 轉(zhuǎn)發(fā)HTTP請(qǐng)求8. 調(diào)用JavaBean9.HTTP響應(yīng) Struts1 Struts1運(yùn)行流運(yùn)行流程程4. 使用MyEclipse簡(jiǎn)化Struts開(kāi)發(fā)給項(xiàng)目添加給項(xiàng)目添加StrutsStruts支持支持注意:利用MyEclipse工具向Web工程中添加Struts支持時(shí),將自動(dòng)生成struts-config.xml配置
15、文件初始架構(gòu),并自動(dòng)在web.xml文件中添加ActionServlet配置信息4. 使用MyEclipse簡(jiǎn)化Struts開(kāi)發(fā)添加添加ActionFormActionForm使用Struts實(shí)現(xiàn)登錄驗(yàn)證使用使用 開(kāi)發(fā)開(kāi)發(fā)的的4 4個(gè)步驟個(gè)步驟 給項(xiàng)目添加給項(xiàng)目添加StrutsStruts支持支持實(shí)現(xiàn)業(yè)務(wù)類實(shí)現(xiàn)業(yè)務(wù)類 添加添加StrutsStruts組件組件1 1、ActionFormActionForm2 2、ActionAction3 3、添加、添加jspjsp頁(yè)面頁(yè)面4 4、配置、配置struts-config.xmlstruts-config.xml調(diào)試運(yùn)行調(diào)試運(yùn)行完成的項(xiàng)目完成的項(xiàng)目
16、1234使用Struts實(shí)現(xiàn)登錄驗(yàn)證給項(xiàng)目添加給項(xiàng)目添加Struts支持支持添加添加Struts支持支持后后的項(xiàng)目的項(xiàng)目增加了:增加了:Struts JAR 包包struts-config.xmlStruts標(biāo)簽庫(kù)標(biāo)簽庫(kù)修改了修改了web.xml添加添加Struts支持支持前前的項(xiàng)目的項(xiàng)目Struts是基于是基于Servlet技技術(shù)實(shí)現(xiàn)的框架術(shù)實(shí)現(xiàn)的框架Struts配置文配置文件的文件名,件的文件名,攔截所有以攔截所有以“.do”結(jié)尾的結(jié)尾的請(qǐng)求請(qǐng)求1使用Struts實(shí)現(xiàn)登錄驗(yàn)證實(shí)現(xiàn)業(yè)務(wù)類(模型實(shí)現(xiàn)業(yè)務(wù)類(模型 - Model)2實(shí)現(xiàn)實(shí)現(xiàn)ActionFormActionForm使用Struts
17、實(shí)現(xiàn)登錄驗(yàn)證public class LoginForm extends ActionForm private String logname;private String logpwd;。struts.action.LoginForm.java從從登陸頁(yè)面登陸頁(yè)面Form表單表單中獲取同名的中獲取同名的參數(shù)參數(shù)3使用Struts實(shí)現(xiàn)登錄驗(yàn)證添加添加Struts組件組件2、Action - 編寫編寫Action代碼代碼public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest req
18、uest, HttpServletResponse response) LoginForm loginForm = (LoginForm) form;String uid=loginForm.getLogname();String pass=loginForm.getLogPwd();UserDao userDao=new UserDao();UserInfo user=userDao.login(uid, pass);if(user!=null)request.getSession().setAttribute(user, user);return mapping.findForward(s
19、uccess);return mapping.findForward(fail);struts.action.LoginAction.java從從ActionForm中即可獲中即可獲得表單提交的參數(shù)得表單提交的參數(shù)通過(guò)邏輯名引用頁(yè)面通過(guò)邏輯名引用頁(yè)面邏輯名和頁(yè)面對(duì)應(yīng)關(guān)系在邏輯名和頁(yè)面對(duì)應(yīng)關(guān)系在struts-config.xml中配置中配置3調(diào)用業(yè)務(wù)類進(jìn)行調(diào)用業(yè)務(wù)類進(jìn)行登錄驗(yàn)證。登錄驗(yàn)證。調(diào)用調(diào)用mapping.findForward()方法實(shí)現(xiàn)轉(zhuǎn)向。方法實(shí)現(xiàn)轉(zhuǎn)向。使用Struts實(shí)現(xiàn)登錄驗(yàn)證添加添加Struts組件組件3. 添加添加JSP頁(yè)面頁(yè)面 根據(jù)根據(jù) Action 的的 Forwords
20、屬性屬性的設(shè)置,添加的設(shè)置,添加login.jsp和和welcome.jsp兩個(gè)頁(yè)面兩個(gè)頁(yè)面用戶名:用戶名: 密密 碼:碼: /login.jsp第一個(gè)數(shù):第一個(gè)數(shù):$requestScope.LoginForm.logname第二個(gè)數(shù):第二個(gè)數(shù):$requestScope.LoginForm.logPwd結(jié)果:結(jié)果:$requestScope.sum/welcome.jsp采用采用Struts提供的提供的html:form標(biāo)簽標(biāo)簽對(duì)應(yīng)前面對(duì)應(yīng)前面Action的的path屬性屬性對(duì)應(yīng)前面對(duì)應(yīng)前面Form的屬性名的屬性名ActionForm保存在保存在request或或session中中3使用S
21、truts實(shí)現(xiàn)登錄驗(yàn)證添加添加Struts組件組件4、配置、配置struts-config.xmllogin.jspLoginAction.java3使用Struts實(shí)現(xiàn)登錄驗(yàn)證調(diào)試運(yùn)行調(diào)試運(yùn)行3小結(jié)使用使用StrutsStruts開(kāi)發(fā)加法器過(guò)程中使用了哪些開(kāi)發(fā)加法器過(guò)程中使用了哪些StrutsStruts組件?組件?使用使用StrutsStruts開(kāi)發(fā)步驟是什么?開(kāi)發(fā)步驟是什么?1 1、添加、添加StrutsStruts支持支持2 2、開(kāi)發(fā)業(yè)務(wù)邏輯類(模型,、開(kāi)發(fā)業(yè)務(wù)邏輯類(模型,ModelModel)3 3、開(kāi)發(fā)、開(kāi)發(fā)ActionFormActionForm組件(視圖組件,組件(視圖組件,
22、ViewView)4 4、開(kāi)發(fā)、開(kāi)發(fā)ActionAction組件(控制組件,組件(控制組件,ControllerController)ActionForm組件組件Action組件組件小結(jié)5 5、開(kāi)發(fā)、開(kāi)發(fā)JSPJSP頁(yè)面頁(yè)面6 6、修改配置文件、修改配置文件struts-config.xmlstruts-config.xml,配置,配置ActionFormActionForm和和ActionAction7 7、調(diào)試運(yùn)行、調(diào)試運(yùn)行Struts原理StrutsStruts原理原理AddForm,ActionMapping123456開(kāi)發(fā)時(shí)只需關(guān)注:開(kāi)發(fā)時(shí)只需關(guān)注:兩個(gè)核心組件兩個(gè)核心組件:ActionFormAddAction一個(gè)配置文件一個(gè)配置文件1、頁(yè)面提交的數(shù)據(jù)封裝到、頁(yè)面提交的數(shù)據(jù)封裝到ActionForm中中2、通過(guò)請(qǐng)求路徑查找、通過(guò)請(qǐng)求路徑查找Struts-config.xml中中Action的配置,找的配置,找到并調(diào)用對(duì)應(yīng)的到并調(diào)用對(duì)應(yīng)的
溫馨提示
- 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ù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 互聯(lián)網(wǎng)+在儀器儀表行業(yè)的應(yīng)用案例考核試卷
- 廢棄物肥料化處理經(jīng)濟(jì)效益分析考核試卷
- 保健品市場(chǎng)社會(huì)責(zé)任信息披露規(guī)范考核試卷
- 財(cái)務(wù)部門個(gè)人2024年終工作總結(jié)(30篇)
- 印刷品設(shè)計(jì)的創(chuàng)意與創(chuàng)新考核試卷
- 財(cái)務(wù)會(huì)計(jì)求職信11篇 關(guān)于財(cái)務(wù)會(huì)計(jì)崗位的求職信
- 2025年中國(guó)PU高固透明底漆數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025年中國(guó)LCD模塊數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025年中國(guó)EAS服務(wù)器系統(tǒng)數(shù)據(jù)監(jiān)測(cè)報(bào)告
- 2025年中國(guó)90°內(nèi)絲卡套彎頭數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2024年江西省公安廳招聘警務(wù)輔助人員考試真題
- 2025年湖北省普通高中學(xué)業(yè)水平合格性考試模擬(三)歷史試題(含答案)
- 2025年高考全國(guó)二卷數(shù)學(xué)高考真題解析 含參考答案
- 2025年普通高等學(xué)校招生全國(guó)統(tǒng)一考試數(shù)學(xué)試題(全國(guó)一卷)(有解析)
- 2025年日歷表全年(打印版)完整清新每月一張
- GB/T 4744-2013紡織品防水性能的檢測(cè)和評(píng)價(jià)靜水壓法
- 國(guó)開(kāi)經(jīng)濟(jì)學(xué)(本)1-14章練習(xí)試題及答案
- 動(dòng)火安全作業(yè)票填寫模板2022年更新
- 廣東某火力發(fā)電廠 (4×600MW) 項(xiàng)目建議書
- 林產(chǎn)化工專業(yè)人才培養(yǎng)方案
- 天津市2020-2021學(xué)年高二化學(xué)下學(xué)期期末聯(lián)考試題(含答案)
評(píng)論
0/150
提交評(píng)論