1.Sping-Boot 概述
1.1 Sping-Boot 介绍
-
Spring-Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。个人理解来说Spring-Boot其实不是什么新的框架,它默认配置了那些没有它你也会去做的Spring Bean配置。
-
Spring-Boot 基于Spring框架,而Spring-Cloud基于Spring-Boot,为微服务体系开发中的架构问题,提供了一整套的解决方案——服务注册与发现,服务消费,服务保护与熔断,网关,分布式调用追踪,分布式配置管理等。
-
Spring-Boot 四大特性:自动配置、起步依赖、Actuator、命令行界面(CLI)
1.2 Sping-Boot 的优点
传统的Spring web项目配置需要经过以下步骤:
1)配置web.xml,加载Spring和Spring MVC
2)配置数据库连接、配置Spring事务
3)配置加载配置文件的读取,开启注解
4)配置日志文件
…
配置完成之后部署tomcat 调试
…
而使用 Spring Boot 来开发项目则只需要非常少的几个配置就可以搭建起来一个 Web 项目,并且利用 IDEA 可以自动生成生成。
小结:
- 简单、快速、方便地搭建项目;
- 对主流开发框架的无配置集成;
- 极大提高了开发、部署效率。
1.3 Sping-Boot 快速搭建
第一步:新建项目,选择Spring Initializr ,然后选择默认的 url 点击【Next】
第二步:修改项目信息,其他保持默认即可,点击【Next】
第三步:勾选web模板,最后完成创建
项目结构如下:
第四步:创建WebController
- @RestController 注解: 该注解是 @Controller 和 @ResponseBody 注解的合体版
运行结果:
看到这个结果,第一次运行springboot web应用就成功了。
1.4 Maven中pom文件解析
<?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">
<!-- pom模型版本 -->
<modelVersion>4.0.0</modelVersion>
<!-- 项目信息 -->
<groupId>demo</groupId><!-- 项目或者组织的唯一标志,并且配置时生成的路径也是由此生成 -->
<artifactId>springboot</artifactId><!-- 项目名 -->
<version>0.0.1-SNAPSHOT</version><!-- 版本 -->
<packaging>jar</packaging><!-- 打包方式 (pom,war,jar) -->
<name>springboot</name><!-- 项目的名称, Maven 产生的文档用 -->
<description>Demo project for Spring Boot</description><!-- 项目的描述, Maven 产生的文档用 -->
<!-- 父级项目 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.7.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<!-- 属性设置 -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><!-- 编译字符编码为utf-8 -->
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><!-- 输出字符编码为UTF-8 -->
<java.version>1.8</java.version><!-- jdK版本 -->
</properties>
<!-- 依赖关系 -->
<dependencies>
<!-- 测试 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!-- springmvc -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- jpa(持久层) -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<!-- mysql(数据库) -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
</dependencies>
<!-- 编译 -->
<build>
<!-- 插件 -->
<plugins>
<!-- maven插件 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
一般在创建项目的时候,会将所需的依赖模块都选上,idea会自动帮我们导入依赖包,当在国内访问Maven的依赖库时,速度会非常慢,此时可以使用阿里云的Maven镜像服务器或者公司Maven私服,具体配置可自行百度。
1.5 springboot application项目启动类
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
这是项目启动的入口,必须加上@SpringBootApplication注解,详情请参考 :深入理解SpringBoot之启动探究
这是我在自学springboot做的一些笔记,记录一下自己的学习历程,持续更新中…