Spring Boot简介:
Spring Boot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目。它使用习惯优于配置的理念让你的项目快速运行起来,使用Spring Boot很容易创建一个独立运行(运行jar,内置Servlet容器,Tomcat、jetty)、准生产级别的基于Spring框架的项目,使用SpringBoot你可以不用或者只需要很少的配置文件。
Spring Boot核心功能
- 独立运行的Spring项目:可以以jar包形式独立运行,通过java -jar xx.jar即可运行
- 内嵌Servlet容器:可以选择内嵌Tomcat、Jetty等
- 提供starter简化maven配置:一个maven项目,使用了spring-boot-starter-web时,会自动加载Spring Boot的依赖包
- 自动配置Spring:Spring Boot会根据在类路径中的jar包、类,为jar包中的类自动配置Bean
- 准生产的应用监控:提供基于http、ssh、telnet对运行时的项目进行监控
- 无代码生成和xml配置:主要通过条件注解来实现
Spring Boot项目搭建
这里使用maven进行项目搭建,有几种搭建方式
1、http://start.spring.io/,填写相关的项目信息、jdk版本等,就会生成一个maven项目的压缩包,下载解压导入IDE就可以
2、IDE下直接创建,推荐使用STS(Spring Tool Suite)、IntelliJ IDEA均支持直接搭建,STS是Spring基于eclipse进行二次开发的工具
Spring Tool Suite :新建Spring Initializr项目,填写项目信息和选择技术,将项目设置成maven项目
IntelliJ IDEA:新建Spring Starter project,填写项目信息和选择技术完成maven工程创建
3、Spring Boot CLI工具,使用命令创建
4、手工构建maven项目
-
- 任意IDE新建空maven项目
- 修改pom.xml添加Spring Boot的父级依赖Spring-boot-starter-parent,添加之后这个项目就是一个Spring Boot项目了
使用spring boot有什么好处
其实就是简单、快速、方便!平时如果我们需要搭建一个spring web项目的时候需要怎么做呢?
1)配置web.xml,加载spring和spring mvc
2)配置数据库连接、配置spring事务
3)配置加载配置文件的读取,开启注解
4)配置日志文件
...
配置完成之后部署tomcat 调试
...
现在非常流行微服务,如果我这个项目仅仅只是需要发送一个邮件,如果我的项目仅仅是生产一个积分;我都需要这样折腾一遍!
但是如果使用spring boot呢?
很简单,我仅仅只需要非常少的几个配置就可以迅速方便的搭建起来一套web项目或者是构建一个微服务!
我使用IDEA快速搭建:
1.创建一个新项目(Create New Project)
选择 Spring Initializr,Project SDK 选择 1.8,URL 填写默认的,点击 Next
2.继续项目配置
Name:项目名称
Type:我们是Maven构建的,那么选择第一个Maven Project
Packaging:打包类型,打包成Jar文件
Java Version:jdk版本,选择1.8
Language:开发语言,选择Java
Group:对应pom文件中的groupId,项目组织的唯一标识,对应Java包的结构
Artifact:对应pom文件的artifactId,项目唯一标识,对应项目名称
Version:项目版本,对应pom文件的version
Description:项目描述,对应pom文件的description
Package:包名
3.Spring Boot 版本选择,我这里选择了1.5.2,只要勾选Web下的web就可以了,然后Next
4.填写项目名称,项目存放的目录,点击 Finish
5.可以将下面这三个无关的文件删除,干净结构
6.最后的项目结构
项目生成之后,会在根包目录下生成一个入口类,添加一个测试控制器简单测试一下
执行main方法之后,在浏览器中访问http://localhost:8080,可以得到如下结果,框架搭建完成:
添加jsp页面
添加依赖
在pom.xml中添加支持jsp的依赖如下:
<!-- web 依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- servlet 依赖 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<!-- tomcat 的支持.-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
三.编写controller
@Controller
public class LoginController {
@RequestMapping(value="/login")
public String hello(){
return "login";
}
}
注意此时注解要用@Controller,不能使用@RestController
四.配置支持jsp的配置文件application.properties
##jsp ##
spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
五.编写jsp页面
在项目工程下src/main目录下添加webapp/WEB-INF/jsp文件夹,里面添加jsp页面
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
Hello!!!
</body>
</html>
六.启动项目启动类访问controller路径
参考:
https://www.cnblogs.com/qiyexue/p/7121610.html