SpringBoot学习之HelloWord

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_18948359/article/details/80686240

SpringBoot 简介

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。

Spring Boot主要有下面几个特点:

  • 独立运行的Spring项目
    Spring Boot 的项目可编译为一个独立的 jar。单独运行。

  • 内嵌Tomcat容器
    无需部署WAR文件,简化部署操作。

  • 提供starter简化Maven配置
    使用Spring或者SpringMVC我们需要添加大量的依赖,而这些依赖很多都是固定的,这里Spring Boot 通过starter能够帮助我们简化Maven配置。

  • 自动配置Spring
  • 准生产的应用监控
  • 无代码生成和xml配置

准备工作

安装 java环境Maven环境开发工具上面集成 Maven
这里写图片描述

开发工具

使用的是 MyEclipse,因为老的项目是使用这个开发。就用这个作为例子。如果熟悉 idea 工具,配置也差不多。下面会说到。我使用的是 Idea 2018.1 这个版本的。目前是最新的。
官方地址:http://spring.io/guides/gs/rest-service/。大家也可以参考下这个。

搭建环境

使用MyEclipse 搭建

第一步(新建一个Maven工程):

打开 MyEclipse : File/new/Project/
新建Maven工程

第二步(选择工程地址):

选择工程地址

第三步(选择工程类型):

这一步是选择 Maven 的快速 Demo。我们可以直接点击下一步,因为我们需要覆盖掉 pom.xml 中的内容。
直接下一步

第四步(设置 GroupID 和 Artifact Id):

GroupID: 就是我们之前在web 项目中使用的 包名(比如:com.xx.xx)
Artifact Id:就是我们这个项目的名字
输入 Group Id 和 Artiface Id

完成

因为我有XML 格式的校验所以会报错,但是这个不影响。
完成图

修改模版

修改 pom.xml
修改改完了,Maven 会提示需要下载这些依赖的 jar。点击下载就好。

<?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.study.springboot</groupId>
    <artifactId>springbootDemo</artifactId>
    <version>0.1.0</version>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.2.RELEASE</version>
    </parent>

    <dependencies>
        <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>com.jayway.jsonpath</groupId>
            <artifactId>json-path</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

    <repositories>
        <repository>
            <id>spring-releases</id>
            <url>https://repo.spring.io/libs-release</url>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>spring-releases</id>
            <url>https://repo.spring.io/libs-release</url>
        </pluginRepository>
    </pluginRepositories>
</project>

先附上一张图
我们需要新建的文件夹以及代码如下图:
新建文件的图

Application.java
这个类是我们程序执行的总入口。 特定的@SpringBootApplication注解。

package hello;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

Greeting.java
这个作为我们的一个实体类。

package hello;

public class Greeting {

    private final long id;
    private final String content;

    public Greeting(long id, String content) {
        this.id = id;
        this.content = content;
    }

    public long getId() {
        return id;
    }

    public String getContent() {
        return content;
    }
}

GreetingController.java
提供 Http的访问。需要使用到 @RestController@RequestMapping 这个两个特定的注解。

package hello;

import java.util.concurrent.atomic.AtomicLong;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class GreetingController {

    private static final String template = "Hello, %s!";
    private final AtomicLong counter = new AtomicLong();

    @RequestMapping("/greeting")
    public Greeting greeting(@RequestParam(value="name", defaultValue="World") String name) {
        return new Greeting(counter.incrementAndGet(),
                            String.format(template, name));
    }
}

启动 Application.java
下面部分控制台打印的消息。


  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.0.2.RELEASE)

2018-06-13 23:20:00.079  INFO 4712 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-06-13 23:20:00.079  INFO 4712 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2018-06-13 23:20:00.381  INFO 4712 --- [           main] o.s.j.e.a.AnnotationMBeanExporter        : Registering beans for JMX exposure on startup
2018-06-13 23:20:00.501  INFO 4712 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
2018-06-13 23:20:00.511  INFO 4712 --- [           main] hello.Application                        : Started Application in 6.387 seconds (JVM running for 7.46)

浏览器访问:
访问 8080 地址
访问8080

访问我们的后台方法
后台方法

使用 Idea 搭建

打开 Idea 开发工具,File > New > Module

第一步(选择Module类型)

我们选择使用 Spring Initializr , 选择 JDK 1.8 的版本
第一步

第二步(设置 Group、Artifact)

可以修改下 Group、Artifact、Name,如果是第一次搭建上手也可以不用改。直接跳过去。关于 Group 和 Artifact 的解释和上面 MyEclipse 一样。

  • Name:项目名称
  • Type:我们是Maven构建的,那么选择第一个Maven Project
  • Language:开发语言,选择Java
  • Group:对应pom文件中的groupId,项目组织的唯一标识,对应Java包的结构
  • Artifact:对应pom文件的artifactId,项目唯一标识,对应项目名称
  • Version:项目版本,对应pom文件的version Description:项目描述,对应pom文件的description
  • Package:包名

图示中是我按照 慕课网上面自己修改的,大家可以修改为自己的。
第二步

第三步(选择工程类型)

我们是建一个Web项目,所以勾选 Web, Spring Boot 的版本 选择默认的就好。
第三步

第四步(设置工程路径)

设置我们工程的名称,以及工程所在的路径。
第四步

第五步(查看工程结构)

完成图示
第五步

启动项目

直接运行 StudyApplication.java,鼠标右键,选择 debug模式启动
这里写图片描述

启动完成
启动完成

官方提供生成 Spring Boot模版的地址:https://start.spring.io/
官方HelloWord的地址:https://spring.io/guides/gs/rest-service/#use-maven
官方的文档地址:https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/

W3CSchool的学习地址:https://www.w3cschool.cn/springboot/springboot-w7c2245h.html
网易云课堂免费视频学习地址:http://study.163.com/course/courseMain.htm?courseId=1004576013

本文部分说明来自 W3CSchool。

猜你喜欢

转载自blog.csdn.net/qq_18948359/article/details/80686240