![校區(qū)課件1springboot概述_第1頁](http://file4.renrendoc.com/view/6234bc5848710d463e3d7fee57c5358e/6234bc5848710d463e3d7fee57c5358e1.gif)
![校區(qū)課件1springboot概述_第2頁](http://file4.renrendoc.com/view/6234bc5848710d463e3d7fee57c5358e/6234bc5848710d463e3d7fee57c5358e2.gif)
![校區(qū)課件1springboot概述_第3頁](http://file4.renrendoc.com/view/6234bc5848710d463e3d7fee57c5358e/6234bc5848710d463e3d7fee57c5358e3.gif)
![校區(qū)課件1springboot概述_第4頁](http://file4.renrendoc.com/view/6234bc5848710d463e3d7fee57c5358e/6234bc5848710d463e3d7fee57c5358e4.gif)
![校區(qū)課件1springboot概述_第5頁](http://file4.renrendoc.com/view/6234bc5848710d463e3d7fee57c5358e/6234bc5848710d463e3d7fee57c5358e5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
SpringBoot概 什么是Spring SpringBoot的核心功 SpringBoot的優(yōu)點(diǎn)和缺 優(yōu) 缺 SpringBoot入門案 開發(fā) 直接運(yùn)行main方法進(jìn)行啟 以jar包的方式運(yùn) SpringBoot核 無xml配置的實(shí) 入門 入口類和 編寫 pom.xml文 編寫 添加方 添加方 上傳文件 攔截 Dao開 User實(shí)體 測試 整合 pom.xml文 測 整合 pom.xml文 測 整合 pom.xml文 配置 測試 小 整合 pom.xml文 總 SpringSpringBootSpring并且做了一系列的默認(rèn)配置,我們無需在進(jìn)行手動(dòng)配置,直接拿過來直接使用!Springmvcweb應(yīng)用,那么我們可能創(chuàng)建一個(gè)springmvc的配置文件開發(fā)Controller導(dǎo)入相關(guān)的依賴包開發(fā)Controller更改SpringBoot的默認(rèn)配置也是可以的.極大的簡化了我們的開發(fā).spring項(xiàng)目:SpringBootjarjavajarxxx.jar優(yōu)點(diǎn)是:節(jié)省服務(wù)器資源內(nèi)嵌servlet容器:SpringBoot可以選擇內(nèi)嵌Tomcat,Jetty,這樣我們無須以war包形式部署項(xiàng)目。提供starter簡化Maven配置:在SpringBoot項(xiàng)目中為我們提供了很多的spring-boot-starter-xxx的項(xiàng)目(我們把這個(gè)依賴可以稱之為SpringBootwebspring-boot-starter-web這個(gè)項(xiàng)目的依賴,導(dǎo)入這個(gè)依賴以后!SpringBootBeanSpringBoot不:xml配置SpringBootspring4.x提供的注解新特性來實(shí)現(xiàn)無代碼生成和xml配置。spring4.x提倡使用配置和注解配置組合,而SpringBoot不需要任何xmlspring提供運(yùn)行時(shí)的應(yīng)用監(jiān)控資料相對比較少版本迭代較快SpringBoot在pom.xml加入spring-boot-starter-web的依賴添加父工程加入web開發(fā)的支持定義變量開發(fā)packagepackageimportimportorg.springframework.web.bind.annotation.ResponseBody;publicclassHelloSpringBootController@RequestMapping(value="/hello")publicStringhello()return"HelloSpringBoot"}}packagepackageimportpublicclass{publicstaticvoidmain(String[]{啟動(dòng)SpringBoot}直接運(yùn)行main以jarSpringBoot的maven插件SpringBoot開發(fā)我們的Spring應(yīng)用是非常簡單的.那么同時(shí)很多同學(xué)可能存在一些疑問:無xml的配SpringBoot無xml自從spring3.0以后spring提供了很多的注解來替代xml文件的配置.最為核心的是下面的兩個(gè)注解: 標(biāo)注該類是一個(gè)配置類.類似于我們定義的applicationContext.xml@Bean類似于我們在之前的spring配置文件中配置的<beanid=入門Spring依賴包maven編寫publicclassHelloService{publicString{return"HelloJavaConfig";}packagepackageimportimport@ConfigurationpublicclassApplicationConfiguration publicHelloService{returnnewHelloService()}}packagepackagepublicclassJavaConfigTest{publicstaticvoidmain(String[]args)//AnnotationConfigApplicationContextapplicationContext=newHelloServicehelloService=applicationContext.getBean(HelloService.class);Stringresult=helloService.sayHello();}}練習(xí)(配置導(dǎo)入user腳本文件在入門小Demopom.xml文件的配置基礎(chǔ)之上加入如下依賴加入spring-jdbc的依賴包加入druid的數(shù)據(jù)源加入mysql的驅(qū)動(dòng)privateprivateIntegerid;privateStringuserName;privateStringsex;privateStringaddresspackagepackagecom.itheima.config;importorg.springframework.context.annotation.Bean;importorg.springframework.context.annotation.Configuration;importorg.springframework.jdbc.core.JdbcTemplate;importpublicclassJdbcTemplateConfigurationprivateStringdriverClassNameprivateStringjdbcUrl;privateStringjdbcUserName;privateStringjdbcPassword;publicDataSourcedataSource()DruidDataSourcedataSource=newDruidDataSource();returndataSource}publicJdbcTemplatejdbcTemplate(DataSource{JdbcTemplatejdbcTemplate=newJdbcTemplate(dataSource);returnjdbcTemplate;}}packagepackageimportjava.sql.ResultSet;importjava.util.List;importorg.springframework.jdbc.core.JdbcTemplate;importcom.itheima.config.domain.User;publicclass{publicstaticvoidmain(String[]{獲取JdbcTemplatejdbcTemplate=publicUsermapRow(ResultSetrs,intnum)throwsSQLExceptionUseruser=newUser();return}})//輸出}}web.xmlSpringmvc的前端控制器(DispatcherServlet).但是我們剛才在編寫入門案例的時(shí)候我們并沒有去做任何的配置.那么我們?yōu)槭裁纯梢允褂媚?那是因?yàn)镾pringBoot給我們做了自動(dòng)配置.那么接下來我們就來講解一下SpringBoot中自動(dòng)配置的原理.會(huì)自動(dòng)掃描@SpringBootApplication所在類的同級(jí)包以及下級(jí)包中的bean(如果是jpa項(xiàng)目還會(huì)自動(dòng)掃描標(biāo)注@Entity的實(shí)體類)@SpringBootApplication注解是SpringBoot的核心注解:通過源碼我們發(fā)現(xiàn)在@SpringBootApplication:@SpringBootConfiguration@EnableAutoConfiguration@ComponentScan我們把這樣的注解稱之為組合注解.組合注解作用就是簡化我們的注解使用:我們在某一個(gè)類上使用了@SpringBootApplication那么就相當(dāng)于在該類上使用了該注解上定義的其他的三個(gè)注解這個(gè)注解也是一個(gè)組合注解,在SpringBoot項(xiàng)目中推薦使用@SpringBootConfiguration替代:依賴,會(huì)自動(dòng)添加會(huì)自動(dòng)添加tomcatspringmvc的依賴springboottomcatspringmvc;tomcat8080端口,Springmvc請求處理方式入門案例中我們只是加入了spring-boot-starter-web這么一個(gè)依賴,就可以實(shí)現(xiàn)DispatcherServlet的相關(guān)配置,這是為什么呢?注意當(dāng)我們加入了spring-boot-starter-web的依賴以后,maven的依賴傳遞特性,會(huì)自動(dòng)將一些依賴包加入到我們的項(xiàng)目中;比如會(huì)自動(dòng)添加tomcat和springmvc的依賴:那么這些依賴包的確加入到了我們的項(xiàng)目中,那么怎么完成的自動(dòng)配置呢?因?yàn)樵诩尤雜pring-boot-starter-web依賴的時(shí)候,會(huì)自動(dòng)將另外一個(gè)依賴加入進(jìn)來:這個(gè)依賴包就是那么和我們web開發(fā)相關(guān)的自動(dòng)配置類是在web包下,在這個(gè)web包中定義了很多的xxxAutoConfiguration這樣的類,這些類其實(shí)就是用來完成自動(dòng)配置的;我們不妨打開DispatcherServletAutoConfiguration看看上面的是關(guān)于DispatcherServletAutoConfiguration的定義,通過源碼我們發(fā)現(xiàn)在這個(gè)類上定義了很多的好幾個(gè)注解: 這個(gè)注解自動(dòng)配置的順序定義,取值為int的最小值,優(yōu)先級(jí)最高:::需求自定義自動(dòng)配置類,完成HelloService的自動(dòng)配置(itheima-spring-starter-編寫publicclassHelloService{privatefinalStringDEFAULT_SAYWORD="hello"publicStringsayHello(StringsayWord)if(sayWord!=null&&{returnsayWord}returnDEFAULT_SAYWORD}}包packagepackageimportorg.springframework.context.annotation.Bean;importcom.itheima.spring.starter.service.HelloService;publicclassHelloServiceAutoConfigpublicHelloServicehelloStaterService(){}} 定義變量導(dǎo)入springboot測試的依賴包依賴packagepackageimportorg.springframework.context.ConfigurableApplicationContext;publicclass{publicstaticvoidmain(String[]{//SpringConfigurableApplicationContextapplicationContext=SpringApplication.run(HelloStarterServiceTest.class,args);HelloServicehelloStaterService=applicationContext.getBean(HelloService.class);StringsayHello=helloStaterService.sayHello(null);}使用Junitpackagepackageimportimportimportorg.springframework.boot.test.context.SpringBootTest;importcom.itheima.spring.starter.service.HelloService;@SpringBootTest(classes=HelloStarterServiceTest.class)publicclassApplicationTest{privateHelloServicehelloServicepublicvoidtestAutoConfig()StringsayHello=helloService.sayHello(null);}}如果我們不需要SpringBoot自動(dòng)配置,想關(guān)閉某一項(xiàng)的自動(dòng)配置,該如何設(shè)置呢?比如我們不想要SpringBootSpringBoot使用一個(gè)全局的配置文件,這個(gè)全局配置文件為pertiesapplication.yml;src/main/resources目錄下,比如我們可以更改tomcat的端口號(hào):測試SpringBootstarterpom,starterpom,那么相關(guān)的技術(shù)配置將會(huì)生效我們就可以直接使用SpringBoot為我們提供的自動(dòng)配置的bean;SpringBoot官方為我們提供的starterpom文件有:Springboot不建議我們使用配置文件的方式來完成配置,但是有的情況下我們不得不需要使用配置文件,那么我們就可以使用:,web開發(fā)中,css,js,圖片等等一些靜態(tài)的資源文件!那么我們應(yīng)該把這些靜態(tài)資源存儲(chǔ)在什么目錄下呢?SpringBoot項(xiàng)目要求我們將這個(gè)靜態(tài)資源文件存儲(chǔ)到resources目錄下的static目錄中;當(dāng)然這個(gè)配置是可以進(jìn)行更改的,但是不建議更改!在進(jìn)行訪問的時(shí)候我們不需要添加上static文件目錄,SpringBoot會(huì)自動(dòng)在static目錄中查找對應(yīng)的資源文件.SpringBoot項(xiàng)目建議我們使用模板引擎來進(jìn)行頁面視圖的渲染,jsp!tomcatjsp頁面的支持.SpringBoot提供了大量的模板引擎,包含F(xiàn)reemarkerGroovy,Thymeleaf,VelocityMustache.SpringBoot繼承freemarker作為頁面視圖!加入spring-boot-starter-freemarkerprivateprivateIntegerid;privateStringuserName;privateStringsex;privateStringaddressSpringBoottemplates目錄專門用來存儲(chǔ)模板文件的.因此我們需要將指定的模板文件放在該目錄下!模板文件<!DOCTYPE<!DOCTYPE<body<table<#listusersas編寫freemarker的程序員,都知道!freemarker+=>>>輸出結(jié)果!SpringBoot我們只需要將數(shù)據(jù)存儲(chǔ)到Model對象中.然后返回到結(jié)果頁面!SpringBoot會(huì)自動(dòng)的將數(shù)據(jù)填充到模板完成視圖的渲染!packagepackageimportjava.util.List;importorg.springframework.ui.Model;importcom.itheima.spring.domain.User;publicclassUserController@RequestMapping(value="/findAllUser")publicStringfindAllUser(Modelmodel){List<User>users=newArrayList<User>();users.add(newUser(1"張三"1"北京"usersusers.add(newUser(2"李四"2"西安"users.add(newUser(3"王五"2"草灘六路"users.add(newUser(4"趙六"1"上海"return"user"}}在進(jìn)行項(xiàng)目開發(fā)階段,我們需要頻繁的修改代碼,來進(jìn)行項(xiàng)目的測試!每一次進(jìn)行項(xiàng)目代碼修改的時(shí)候,我們都需要進(jìn)行項(xiàng)目重新啟動(dòng),這!Srngoot:ngbovoo!!熱部署配置web開發(fā)的時(shí)候,我們都需要對異常進(jìn)行處理!SpringmvcHandlerExceptionResolver對象對異常進(jìn)行統(tǒng)一的處理!SpringBoot中如何進(jìn)行異常的統(tǒng)一處理呢?SpringBoot中給我們提供了兩個(gè)注解,可以用來完成異常的處理! 捕獲@RequestMapping注解的方法拋出的異常,我們可以通過該注解實(shí)現(xiàn)自定義異常處理value指定需要返回ModelAndView對象Model但是需要使用@ResponseBody注解將其轉(zhuǎn)化成Json字符串返回String表示返回一個(gè)邏輯視圖@RequestMapping@RequestMapping(value="/findUser/{num}")publicStringfindUser(@PathVariable(value="num")intnum)if(num==1)return"HelloUser"}elsethrownewRuntimeException("notfinduserinfo..............")}}packagepackageimportorg.springframework.web.bind.annotation.ControllerAdvice;importorg.springframework.web.bind.annotation.ExceptionHandler;importorg.springframework.web.bind.annotation.ResponseBody;publicclassUserExceptionHandlerpublicpublicStringhandlerException(Exception{}}<!DOCTYPE<!DOCTYPE<body<inputtype="file"id="inputfile"@RequestMapping@RequestMapping(value=publicStringpath2(@PathVariable(value="path")String{returnpath}上傳文件importjava.io.File;importimportorg.springframework.web.multipart.MultipartFile;publicclassUploadController@RequestMapping(value=publicStringfileUpload(MultipartFileuploadFile)tryFilefile=newFile("D:\\images\\"+uploadFile.getOriginalFilename());}}catch(Exception{}return"success"}}攔截器對使用Springmvc、Struts的開發(fā)人員來說特別熟悉,因?yàn)槟阒灰肴プ龊靡粋€(gè)項(xiàng)目必然會(huì)用到它。攔截器在我們平時(shí)的項(xiàng)目中用處有很多,如:日志記錄、用戶登錄狀態(tài)攔截、安全攔截等等。而SpringBoot內(nèi)部集成的是Springmvc控制框架,所以使用起來跟SpringMVC沒有區(qū)別,只是在配置上有點(diǎn)不同。需求:當(dāng)用戶請求以/file-upload這個(gè)路徑時(shí)候,需要驗(yàn)證用戶是否登錄如果沒有登錄,跳轉(zhuǎn)到登錄頁面,讓用戶進(jìn)行登錄!如果用戶已經(jīng)登packagepackageimportjavax.servlet.http.HttpServletRequest;importorg.springframework.web.servlet.ModelAndView;publicclassCheckUserLoginInterceptorimplementsHandlerInterceptorpublicbooleanpreHandle(HttpServletRequestrequest,HttpServletResponseresponse,Objecthandler)throwsException{StringuserName=(String)request.getSession().getAttribute("user");if(userName==null||userName.equals("")){returnfalse;}elsereturn}}ModelAndViewmodelAndView)throwsException{}publicvoidafterCompletion(HttpServletRequestrequest,HttpServletResponseresponse,Objecthandler,Exceptionex)throwsException{}}<!DOCTYPE<!DOCTYPE<body<formrole="form"<inputtype="text"id="userName"<inputtype="password"id="password""編寫登錄的importimportimportpublicclassLoginController@RequestMapping(value=publicStringlogin(StringuserName,Stringpassword,HttpSession{System.out.println("userName====>>>"+userName+",password======>>>>"+password);session.setAttribute("user",userName);}}packagepackageimportimporterceptor.CheckUserLoginInterceptor;}}SpringBoot不建議我們使用jsp頁面作為視圖的顯示層,因此在SpringBoot中默認(rèn)是不支持jsp頁面的.jsp頁面就需要添加jsp頁面的支持!jsp的支持Dao關(guān)于持久層的開發(fā)存在很多的技術(shù),SpringJdbcTemplate,也可以使用一些第三方的框架,HibernateMybatis.mybatis進(jìn)行開發(fā).SpringBootmybatis的整合.SpringBoot和Mybatis的整合存在兩種方式:第二種:使用mybatis-spring整合的方式,也就是我們傳統(tǒng)的方式需求:查詢所有的用戶信息定義變量添加父工程加入springboot對jdbc的支持配置mybatis整合spring所需要的依賴包mybatis的開發(fā)包springboot的測試包引入mysql配置druidSpringBoot的mavenMybatis的代理開發(fā)(所謂的代理開發(fā)就是我們程序員必須要編寫Dao接口,不需要編寫實(shí)現(xiàn)類,Mybatis通過代理模式給我們生成).那么要使用Mybatis的代理開發(fā)我們就需要配置兩個(gè)東西一個(gè)是SqlSessionFactoryBean另外一個(gè)就是MapperScannerConfigurer.那么接下來我們就來配置一下importjavax.sql.DataSource;importorg.mybatis.spring.SqlSessionFactoryBean;importorg.springframework.core.io.Resource;importorg.springframework.core.io.support.ResourcePatternResolver;@Bean(name=//SqlSessionFactoryBeansessionFactoryBean=newSqlSessionFactoryBean();ResourcePatternResolverpatternResolver=newPathMatchingResourcePatternResolver();Resourceresource=patternResolver.getResource("classpath:mybatis/mybatis-config.xml");returnsessionFactoryBean}}packagepackageimportimportorg.springframework.context.annotation.Bean;import//@AutoConfigureAfter(value={SqlSessionFactoryBeanConfiguration.class})publicclassMapperScannerConfigurerConfiguration{//MapperScannerConfigurermapperScannerConfigurer=newMapperScannerConfigurer();}}privateprivateIntegerid;privateStringuserName;privateStringsex;privateStringaddressimportjava.util.List;importpublicinterfaceUserMapperpublicabstractList<User>findAllUser()}}<?<?xmlversion="1.0"encoding="UTF-8"<!DOCTYPEmapperPUBLIC"-////DTDMapper3.0//EN""http:///dtd/mybatis-3-mapper.dtd">查詢所有的用戶信息<selectid="findAllUser"resultType="com.itheima.mybatis.springboot.domain.User">selectid,usernameasuserName,sex,addressfromuserpackagepackageimportimportpublicclass{publicstaticvoidmain(String[]{//啟動(dòng)應(yīng)用}importjava.util.List;importimportimportorg.springframework.boot.test.context.SpringBootTest;importimportcom.itheima.mybatis.springboot.domain.User;@SpringBootTest(classes={MybatisSpringBootApplication.class})publicclassMybatisSpringBootTest{privateUserMapperuserMapper;publicvoidfindAll()List<User>user=userMapper.findAllUser();}}整合使用過SpringDataRedis的開發(fā)人員應(yīng)該知道,SpringDataRedis給我們提供了一個(gè)類StringRedisTemplate用來簡化我們對Redis的操作.我們現(xiàn)在使用的是SpringBoot,StringRedisTemplate這個(gè)類,SpringBoot給我們進(jìn)行了自動(dòng)配置,因此我們只需要注入該類既packagepackageimportorg.springframework.boot.test.context.SpringBootTest;@RunWith(value=SpringJUnit4ClassRunner.class)publicclassRedisSpringBootTest{publicvoid}Stringvalue=redisTemplate.boundValueOps("itheima").get();}整合配置springboot和solr整合的starter##solr單節(jié)點(diǎn)配置#集群配置packagepackageimportorg.junit.Test;importorg.springframework.boot.test.context.SpringBootTest;@RunWith(value=SpringJUnit4ClassRunner.class)publicclassRedisSpringBootTest{publicvoidaddDocument()throwsExceptionSolrInputDocumentinputDocument=newSolrInputDocument();inputDocument.addField("id","100");solrClient.add(inputDocument);}}整合加入activemq的支持配置packagepackageimportimportmand.ActiveMQQueue;importmand.ActiveMQTopic;importpublicclassDestinationConfigpublicQueuequeueDestination()}publicTopictopicDestination()}}packagepackageimportimportorg.springframework.jms.core.JmsTemplate;importpublicclassActiveMQProducerprivateJmsTemplateprivateQueueprivateTopictopic;publicvoidsendMessage(){for(intx=0;x<10000;x++)jmsTemplate.convertAndSend(queue,"queue......"+x);jmsTemplate.convertAndSend(topic,"topic......"+x);try}catch(InterruptedException{}}}}packagepackageimportimportimportorg.springframework.boot.test.context.SpringBootTest;importimportcom.itheima.activemq.ActiveMqApplication;@SpringBootTest(classes={ActiveMqApplication.class})publicclassActivemqApplicationTest{privateActiveMQProduceractiveMQProducerpublicvoid{}}packagepackageimportorg.springframework.stereotype.Component;publicvoidtopicConsumer(Stringtext){}publicvoidqueueConsumer(Stringtext){}}加入上述配置了以后,topic的類型的消息,queue類型的消息!boolean類型的值.)packagepackageimportimportorg.springframework.context.annotation.Bean;importimportorg.springframework.jms.config.JmsListenerContainerFactory;@Bean(name=publicConnectionFactory{ConnectionFact
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- Unit2 An Accident(說課稿)-2024-2025學(xué)年北師大版(三起)英語六年級(jí)上冊
- 3-1《百合花》(說課稿)高一語文同步高效課堂(統(tǒng)編版 必修上冊)
- 2023二年級(jí)數(shù)學(xué)上冊 七 分一分與除法第5課時(shí) 小熊開店說課稿 北師大版
- 3 天窗(說課稿)2023-2024學(xué)年部編版語文四年級(jí)下冊
- 《8和9的加、減法的應(yīng)用》(說課稿)-2024-2025學(xué)年一年級(jí)上冊數(shù)學(xué)人教版
- Unit 1 Art Using language 2 說課稿 -2023-2024學(xué)年高中英語人教版(2019)選擇性必修第三冊
- Unit 5 Colours Lesson 1(說課稿)-2024-2025學(xué)年人教新起點(diǎn)版英語一年級(jí)上冊
- 2023四年級(jí)數(shù)學(xué)上冊 1 大數(shù)的認(rèn)識(shí)第4課時(shí) 億以內(nèi)數(shù)的大小比較說課稿 新人教版
- 2024-2025學(xué)年新教材高中英語 Unit 5 Working the Land Learning About Language(二)說課稿 新人教版選擇性必修第一冊
- 2025團(tuán)體人壽保險(xiǎn)合同
- 蘇教版四年級(jí)數(shù)學(xué)下冊第三單元第二課時(shí)《常見的數(shù)量關(guān)系》課件
- 2025年中考物理總復(fù)習(xí)《壓強(qiáng)》專項(xiàng)測試卷含答案
- SaaS服務(wù)具體應(yīng)用合同范本2024版版
- 殘疾人掛靠合作合同協(xié)議書范本
- 浙江省臺(tái)州市2021-2022學(xué)年高一上學(xué)期期末質(zhì)量評(píng)估政治試題 含解析
- 寧夏“8·19”較大爆燃事故調(diào)查報(bào)告
- 清代文學(xué)緒論
- 阿里云數(shù)字化轉(zhuǎn)型生態(tài)介紹課件
- 《控軋控冷》課件
- 高中英語選擇性必修三 Unit 2 Healthy Lifestyle Section B Learning about Language(教案)
- 煤礦瓦斯抽采達(dá)標(biāo)暫行規(guī)定
評(píng)論
0/150
提交評(píng)論