SpringBoot專案搭建完成後的問題
阿新 • • 發佈:2019-01-09
SpringBoot:
1.Springboot啟動類中main方法SpringApplication.run(SpringdemoApplication.class, args);中的類需要時是啟動類本身,否則會報Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletCont錯誤-----待定結果;
2.Spring Boot對靜態資源的預設路徑進行了配置: ResourceProperties.calss 預設的靜態資源路徑 classpath:/META-INF/resources/
classpath:/resources/
classpath:/static/
classpath:/public
只要靜態資源放在這些目錄中任何一個,SpringMVC都會幫我們處理。
3.Springboot官方不推薦jsp模板引擎: 1. 在tomcat上,jsp不能在巢狀的tomcat容器解析即不能在打包成可執行的jar的情況下解析
2. Jetty 巢狀的容器不支援jsp
3. Undertow
[email protected]預設就會在每個方法上加上@Responsebody,方法返回值會直接被httpmessageconverter轉化,如果想直接返回檢視,需要直接指定modelAndView。
5.intellij下將springboot專案打成war包釋出到遠端tomcat伺服器上:
1.將pom.xml中的打包方式修改為war
2.在pom.xml中新增依賴,將scope狀態修改為provided
SpringBootServletInitializer這個類是springboot提供的web程式初始化的入口,當我們使用外部容器執行專案時會自動載入並且裝配。
實現了SpringBootServletInitializer的子類需要重寫一個configure方法,方法內自動根據LessontwoApplication.class的型別建立一個SpringApplicationBuilder交付給springboot
框架來完成初始化執行配置。
①.springboot2.0版本自帶的tomcat版本是8.5.X,所以自己使用的tomcat版本不能低於8.5,否則不相容會報錯
②.如果放入外部的tomcat執行,你在springboot配置檔案(.properties或者.yml)裡面配置的埠號是不生效的,訪問的時候得用tomcat配置檔案所配置的埠號。
6. 配置springboot支援jsp:
pom.xml中不能引入如下配置:
在pom檔案中新增配置:
1.Springboot啟動類中main方法SpringApplication.run(SpringdemoApplication.class, args);中的類需要時是啟動類本身,否則會報Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletCont錯誤-----待定結果;
2.Spring Boot對靜態資源的預設路徑進行了配置: ResourceProperties.calss 預設的靜態資源路徑 classpath:/META-INF/resources/
classpath:/resources/
classpath:/static/
classpath:/public
只要靜態資源放在這些目錄中任何一個,SpringMVC都會幫我們處理。
3.Springboot官方不推薦jsp模板引擎: 1. 在tomcat上,jsp不能在巢狀的tomcat容器解析即不能在打包成可執行的jar的情況下解析
2. Jetty 巢狀的容器不支援jsp
3. Undertow
5.intellij下將springboot專案打成war包釋出到遠端tomcat伺服器上:
1.將pom.xml中的打包方式修改為war
<groupId>com.borya</groupId> <artifactId>Project</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging>
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency>
3.修改src/main/java下的application啟動項
SpringBootServletInitializer這個類是springboot提供的web程式初始化的入口,當我們使用外部容器執行專案時會自動載入並且裝配。
實現了SpringBootServletInitializer的子類需要重寫一個configure方法,方法內自動根據LessontwoApplication.class的型別建立一個SpringApplicationBuilder交付給springboot
框架來完成初始化執行配置。
@SpringBootApplication public class ProjectApplication extends SpringBootServletInitializer implements WebApplicationInitializer{ @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application){ return application.sources(ProjectApplication.class); } public static void main(String[] args) { SpringApplication.run(ProjectApplication.class, args); } }
注意:
①.springboot2.0版本自帶的tomcat版本是8.5.X,所以自己使用的tomcat版本不能低於8.5,否則不相容會報錯
②.如果放入外部的tomcat執行,你在springboot配置檔案(.properties或者.yml)裡面配置的埠號是不生效的,訪問的時候得用tomcat配置檔案所配置的埠號。
6. 配置springboot支援jsp:
pom.xml中不能引入如下配置:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency>
因為我引了報錯了。。。。
在pom檔案中新增配置:
<build> <resources> <resource> <directory>src/main/webapp</directory> </resource> </resources> </build>還在試坑。。。