嵌入式servlet容器将项目打包成可执行的jar包。
优点:简单、便携。
缺点:默认不支持JSP,优化定制比较复杂。
外置的servlet容器:在外面安装tomcat,将应用打包成war包。
使用方法
1)必须创建一个war项目(用IDEA创建好目录结构)。
2)将嵌入式的tomcat指定为provided:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
3)必须编写一个SpringBootServletInitializer的子类,并调用configure方法。
public class ServletInitializer extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
//传入spring boot应用的主程序
return application.sources(Springboot04WebJspApplication.class);
}
}
4)启动服务器就可以使用。
原理
jar包:执行springboot主类的main方法,启动ioc容器,创建嵌入式的servlet容器。
war包:启动服务器,服务器启动springboot应用,启动ioc容器。