写点什么

【Spring Boot 快速入门】一、周末建立了 Spring Boot 专栏,欢迎学习交流

作者:小阿杰
  • 2021 年 12 月 15 日
  • 本文字数:3705 字

    阅读完需:约 12 分钟

【Spring Boot 快速入门】一、周末建立了Spring Boot专栏,欢迎学习交流

前言

  周末是最好的充电学习时光,周末建立了 Spring Boot 专栏,欢迎学习交流。Spring Boot 是 Spring 框架的升级版,由于 Spring Boot 简化 Spring 应用开发的一个框架,整个 Spring 技术栈,为 J2EE 开发的一站式解决方案。从而 Spring Boot 得到了很快的发展。


  本专栏用于 Java 开发人员,尤其是初学 Spring Boot 和需要从传统 Spring 转向 Spring Boot 开发的技术人员。

初始

  为了简化 Spring 应用的搭建和开发过程,Pivotal 团队在 Spring 基础上提供了一套全新的开源的框架,它就是 Spring Boot。


  Spring Boot 具有 Spring 一切优秀特性,Spring 能做的事,Spring Boot 都可以做,而且使用更加简单,功能更加丰富,性能更加稳定而健壮。随着近些年来微服务技术的流行,Spring Boot 也成为了时下炙手可热的技术。

特点

Spring Boot 具有以下特点:


  • 独立运行的 Spring 项目   Spring Boot 可以以 jar 包的形式独立运行,Spring Boot 项目只需通过命令“ java –jar xx.jar” 即可运行。

  • 内嵌 Servlet 容器   Spring Boot 使用嵌入式的 Servlet 容器(例如 Tomcat、Jetty 或者 Undertow 等),应用无需打成 WAR 包 。

  • 提供 starter 简化 Maven 配置   Spring Boot 提供了一系列的“starter”项目对象模型(POMS)来简化 Maven 配置。

  • 提供了大量的自动配置  Spring Boot 提供了大量的默认自动配置,来简化项目的开发,开发人员也通过配置文件修改默认配置。

  • 自带应用监控   Spring Boot 可以对正在运行的项目提供监控。

  • 无代码生成和 xml 配置   Spring Boot 不需要任何 xml 配置即可实现 Spring 的所有配置。

创建第一个项目

在浏览器输入http://start.spring.io/进入如下界面



  • Project:选择项目的类型,本文使用 Maven Project

  • Language:建立 Spring Boot 项目使用的开发语言,本文中选择 Java。

  • Spring Boot:选择需要创建的 SpringBoot 的版本。其中 Snapshot 版本代表不稳定、尚处于开发中的版本,Release 版本则代表稳定的版本,本文选择 2.5.3。

  • M1 里程碑版一个 GA 后,一般有多个里程碑,例如 M1 M2 M3。

  • Project Metadata:设置项目的基础信息

  • Group:项目唯一的标识符实际对应项目中的 package 包。

  • Artifact:项目的唯一的标识符,实际对应项目的 project Name 名称,Artifact 不可包含大写字母。

  • Name:项目名称

  • Description:项目的一个描述

  • Package name:包名称

  • Packaging:打包类型,项目选择 jar 包还是 war 包,本文选择 jar 包

  • Java:Jdk 使用的版本,本文使用 JDK8

  • Dependencies:建立项目使用的依赖,包含:DEVELOPER TOOLS、WEB、TEMPLATE ENGINES、SECURITY、SQL、NOSQL、MESSAGING、I/O、OPS、OBSERVABILITY、TESTING、SPRING CLOUD、SPRING CLOUD TOOLS 等很多的依赖。

下载项目

点击 Generate Ctrl + ⏎ 按钮下载项目



解压项目,项目文件如下




导入到 idea


开发第一个 Spring Boot 项目

@SpringBootApplication

  @SpringBootApplication 注解包含:@Target、@Retention、@Documented、@Inherited、@SpringBootConfiguration、@EnableAutoConfiguration、@ComponentScan。SpringBootApplication 是 springboot 的基本注解,是写在 springboot 的启动类上的注解,目的是开启 spring Boot 的自动配置。其中:


  • @ComponentScan:可以配置多个需要扫描的包

  • @Target:用于设定注解使用范围。

  • @Retention:被它所注解的注解保留多久。

  • @Documented:在自定义注解的时候可以使用 @Documented 来进行标注,如果使用 @Documented 标注了,在生成 javadoc 的时候就会把 @Documented 注解给显示出来。

  • @EnableAutoConfiguration:开启自动配置。

  • @SpringBootConfiguration:指示此类提供了应用程序配置。

  • @SpringBootApplication 的目的只是为了简化,让开发人员少写代码,实现相同的目标,这也算 Java 封装思想的提现。

POM 依赖包

       <dependency>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-starter-web</artifactId>        </dependency>
复制代码


  • spring-boot-starter-web:依赖启动器的主要作用是提供 Web 开发场景所需的底层所有依赖。


        <dependency>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-starter-test</artifactId>            <scope>test</scope>        </dependency>
复制代码


  • spring-boot-starter-test:进行单元测试的相关依赖。


         <dependency>            <groupId>org.apache.commons</groupId>            <artifactId>commons-lang3</artifactId>            <version>3.7</version>        </dependency>
复制代码


  • commons-lang3:集成的相关工具类。

配置文件

  配置文件 application.properties,为了演示项目,本文仅配置一个简单的服务端口。在 application.properties 中可以配置更多的服务的相关参数,包含:SQL、MQ、Redis、项目名称等等。

项目原码

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 https://maven.apache.org/xsd/maven-4.0.0.xsd">    <modelVersion>4.0.0</modelVersion>    <parent>        <groupId>org.springframework.boot</groupId>        <artifactId>spring-boot-starter-parent</artifactId>        <version>2.3.0.RELEASE</version>        <relativePath/> <!-- lookup parent from repository -->    </parent>    <groupId>com.example</groupId>    <artifactId>simple</artifactId>    <version>0.0.1-SNAPSHOT</version>    <name>simple</name>    <description>Demo project for Spring Boot and MyBatis and Swagger</description>
<properties> <java.version>1.8</java.version> </properties>
<dependencies> <!-- commons start --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.7</version> </dependency> <!-- commons end --> </dependencies>
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build></project>
复制代码

测试 Controller

package com.example.demo.controller;
import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;
/** * @ClassName TestController * @Description: 测试接口 * @Author JavaZhan @公众号:Java全栈架构师 * @Date 2020/6/13 * @Version V1.0 **/@Controller@RequestMapping("/test")public class TestController {
@RequestMapping("hello") @ResponseBody public String getTest(){ return "Hello World ,This is Test"; }}
复制代码

启动类 DemoSimpleApplication

package com.example.demo;
import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;
/** * @MethodName: DemoSimpleApplication * @Description: 启动类 * @Author: JavaZhan @公众号:Java全栈架构师 * @Date: 2020/6/13 **/@SpringBootApplicationpublic class DemoSimpleApplication {
/** * @MethodName: main * @Description: * @param args * @Return: void * @Author: JavaZhan @公众号:Java全栈架构师 * @Date: 2020/6/13 **/ public static void main(String[] args) { SpringApplication.run(DemoSimpleApplication.class, args); }
}
复制代码

配置文件

配置文件 application.properties,为了演示项目,本文仅配置一个简单的服务端口。


server.port=8888
复制代码

结语

  本次基于 Spring Boot 建立的第一个项目就完成了,执行 DemoSimpleApplication 类,在浏览器中输入 http://localhost:8888/test/hello 就会返回正常的“Hello World ,This is Test”信息。好了,本次第一个 Spring Boot 项目启动啦!

  好了,简单的 SpringBoot 项目就搭建完成了,下一章进行项目分析,预计第一期 SpringBoot 整合如下依赖进行学习。



  好了,感谢您的阅读,希望您喜欢,如对您有帮助,欢迎点赞收藏。如有不足之处,欢迎评论指正。下次见。

发布于: 14 小时前阅读数: 18
用户头像

小阿杰

关注

一个爱鼓捣的程序猿,JAVA开发者和爱好者。 2020.10.24 加入

一个爱鼓捣的程序猿,JAVA开发者和爱好者。 分享生活工作中所见、所闻、所学、所用,愿不断成长。公众号【Java全栈架构师】维护者。 自建微信小程序【软考真题解析】【实用在线工具箱】,欢迎阅读交流。

评论

发布
暂无评论
【Spring Boot 快速入门】一、周末建立了Spring Boot专栏,欢迎学习交流