一、首先配置pom文件java
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <!-- 注意:此處的parent必需要這樣引入,使用其餘方式可能會有問題,本地測試不是該方式引入的時候出錯找不到啓動類--> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.2.RELEASE</version> <relativePath /> <!-- lookup parent from repository --> </parent> <groupId>com.ttt</groupId> <artifactId>web</artifactId> <version>1.0-TTT-SNAPSHOT</version> <packaging>war</packaging> <name>web-ad</name> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.5</version> </dependency> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.2</version> </dependency> <!-- 添加 JSTL 支持 --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> <!--做用域必須寫provided--> <scope>provided</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <!--做用域必須寫provided--> <scope>provided</scope> </dependency> </dependencies> <build> <!--定義打包的文件名稱--> <finalName>web</finalName> <plugins> <!--打包插件--> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <!--此處做用忽略web.xml文件(不寫的話pom文件會報錯,不知網上一些文章沒寫這個怎麼會不報錯的),由於war項目啓動加載會先找web.xml,具體介紹可自行百度--> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <configuration> <failOnMissingWebXml>false</failOnMissingWebXml> </configuration> </plugin> </plugins> </build> </project>
二、配置文件配置jsp文件路徑及頁面熱加載部署開啓(建議生產環境去掉此配置)web
spring.mvc.view.prefix=/WEB-INF/ spring.mvc.view.suffix=.jsp #\u5373\u65F6\u7F16\u8BD1jsp\uFF0C \u751F\u4EA7\u73AF\u5883\u4E0D\u5EFA\u8BAE\u4F7F\u7528\uFF0C\u964D\u4F4E\u6027\u80FD server.jsp-servlet.init-parameters.development=true
三、在webapp下建立WEB-INF目錄,建立getDl.jsp文件存放於該目錄下spring
src/main/webapp/WEB-INF/getDl.jsp
四、啓動類配置不變apache
@SpringBootApplication public class WebAdApplication { public static void main(String[] args) { SpringApplication.run(WebAdApplication.class, args); } }
五、Controller跳轉頁面tomcat
@RestController @RequestMapping(value = "/web") @Scope(value = ConfigurableBeanFactory.SCOPE_PROTOTYPE) public class AdController extends WebBaseController { @GetMapping(value = "/getDl") public ModelAndView getDl() { return new ModelAndView("getDl", new HashMap<String,String>("qqq","www")); } }
六、至此,配置完畢,切記:此種方式只適合java -jar 命令啓動,若是將war包放入Tomcat中啓動仍是會報錯的,至於怎麼能將打出的war包放入Tomcat中加載啓動,且聽下回分解。mvc