(17)spring boot 使用外部的容器

为什么会选择外部的容器?因为spring boot内置的服务器不能支持jsp

如何使用外部的容器(tomcat?

使用外部的容器,要将项目打包成war包,而使用内置的,是生成一个jar包。

下面为使用idea创建一个spring boot项目,其使用外部的容器。

step

1.还是使用spring initializer,在弹出来的界面上的package选项选择war(默认为jar

(17)spring boot 使用外部的容器

接下来和以前一样。

2.在新建立的项目中,是没有web.xml的。我们需要借助idea的帮助来创建。在src->main->webapp-.WEB-INF->web.xml

点击program structure,选择modules,选择web

(17)spring boot 使用外部的容器

双击第二个框里的内容,按提示操作即可(第一次需要create点击弹出来的对话框的OK即可).然后,点击第一个框右边的+号,弹出来一个对话框,这样写就OK了:

(17)spring boot 使用外部的容器

最后点击apply,点击OK,就会在src下的main目录下建立相应的目录和文件了。

3之后就可以在webapp下写jsp代码啦:

(17)spring boot 使用外部的容器

hello.jsp 内容:

<h1>hello jsp!</h1>

<a href="abc">abc</a>

点击链接跳转:

@Controller
public class HelloController {

    @GetMapping("/abc")

    public String hello(Model model){

        model.addAttribute("msg","你好");

        return "success";

    }

}

这里还需要像spring MVC中一样配置拦截的前后缀:

在配置文件中写:

spring.mvc.view.prefix=/WEB-INF/

spring.mvc.view.suffix=.jsp

4.还需要配置tomcat,这个就和以前java web一样啦(略)。

(17)spring boot 使用外部的容器

主要是这一步点击+号,将war包部署上来。

5.运行,完事了1