开发环境介绍
idea2018.3
win10
1.使用idea创建一个maven工程(quickstart是jar包和pom格式;webapp是war包),点击 next
2.填好GroupId 和 ArtifactId,然后点击Next
3.设置maven,然后下一步 finish
4.项目新建后的目录格式如下:
如下所示创建项目结构:
5.修改pom.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<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>
<groupId>com.mf</groupId>
<artifactId>springboot_jspdemo</artifactId>
<version>1.0-SNAPSHOT</version>
<!--spring-boot-starter-parent 整合第三方常用框架依赖信息(各种依赖信息)-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.0.RELEASE</version>
</parent>
<dependencies>
<!--添加 spring-boot-starter-web 模块依赖-->
<!--
spring-boot-starter-web 是springBoot 整合springMVC web
实现原理:Maven依赖继承关系,相当于把第三方常用maven依赖信息,在parent 项目中封装好了,使用
springboot 提供依赖信息关联整合的jar包
在springboot中 快速开发原理(Maven 子父依赖关系)springboot 对常用依赖信息的封装
-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!--可以不用写版本号在parent中已经写好了-->
<!--<version>2.0.0.RELEASE</version>-->
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>
<!--springboot 外部tomcat支持-->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
</dependencies>
</project>
6.注意:新建.jsp文件时需要先设置web目录(如果项目的modules没有web就点击下图左上角的 + ,然后拖动滚动条找到Web,然后按下图的步骤设置web的路径):
7.新建springboot启动类 App.java:
package com.mf;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**\
* springboot启动方式:
* 1.@EnableAutoConfiguration 注解的作用:自动配置,扫包范围是当前类(本包和子包不扫描)
* 2.@ComponentScan("com.mf.controller"),@ComponentScan缺点:如果包很多就要写很多路径
* 3.@SpringBootApplication 等于@EnableAutoConfiguration + @ComponentScan 同级包和当前包
* @ClassName App
* @Description TODO
* @Author msi
* @Date 2019/7/28 11:14
*/
// @EnableAutoConfiguration
// @ComponentScan("com.mf.controller")
@SpringBootApplication
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class);
}
}
8.新建一个控制器 Demo.java:
package com.mf.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* @ClassName Demo
* @Description TODO
* @Author msi
* @Date 2019/7/28 14:50
*/
@Controller
public class Demo {
/**
* 返回 /WEB-INF/jsp/indexJsp.jsp
*/
@RequestMapping("/indexJsp")
public String indexJsp(){
return "indexJsp";
}
}
9.配置springmvc的前缀和后缀(prefix和suffix)application.properties:
# 配置springmvc的前缀和后缀
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
10.新建jsp视图页面 indexJsp.jsp:
<%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>JSP页面</h1>
</body>
</html>
启动项目,浏览器中输入:127.0.0.1:8080/indexJsp
GitHub 代码:https://github.com/GitHubFeiLong/springboot_jspdemo