spring boot入门篇-01 - Go语言中文社区

spring boot入门篇-01


该博客学习自http://blog.didispace.com/Spring-Boot%E5%9F%BA%E7%A1%80%E6%95%99%E7%A8%8B/提供的Spring Boot基础教程和http://blog.didispace.com/books/spring-boot-reference/I.%20Spring%20Boot%20Documentation/翻译的Spring Boot中文文档

前言

spring boot是什么?

中文文档是这么讲解的:

Spring Boot简化了基于Spring的应用开发,你只需要”run”就能创建一个独立的,产品级别的Spring应用。 我们为Spring平台及第三方库提供开箱即用的设置,这样你就可以有条不紊地开始。多数Spring Boot应用只需要很少的Spring配置。

你可以使用Spring Boot创建Java应用,并使用java -jar启动它或采用传统的war部署方式。我们也提供了一个运行”spring脚本”的命令行工具。

我们主要的目标是:
- 为所有Spring开发提供一个从根本上更快,且随处可得的入门体验。
- 开箱即用,但通过不采用默认设置可以快速摆脱这种方式。
- 提供一系列大型项目常用的非功能性特征,比如:内嵌服务器,安全,指标,健康检测,外部化配置
- 绝对没有代码生成,也不需要XML配置。

百度百科是这样介绍的:

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。

从两个介绍提取关键点,我们可以得到:

spring boot是简化spring应用的开发,只需要使用特定的少量配置,即可达到一个spring应用该有的效果,达到开箱即用的便捷。

Eclipse工具

为了更快速,方便的搭建spring boot项目,我们可以使用spring 与 eclipse整合的一个工具,工具的下载在https://spring.io/tools/sts/all
下载时请对应自己的eclipse版本。具体的安装教程http://www.roncoo.com/article/detail/124661有,可以对应着

创建项目

当你安装完成,即可进入hello world的学习。首先,创建一个项目
这里写图片描述
右键->New->other,在搜索框输入spring,可以看到下面的画面
这里写图片描述
点击后会进入,此页面是关于项目的工程信息
这里写图片描述

进入选择Spring Boot版本和依赖管理的窗口。它不仅包含了Spring Boot Starter POMs中的各个依赖,还包含了Spring Cloud的各种依赖。
这里写图片描述
然后按finish完成项目创建

目录结构

目录结构应该是这样的
这里写图片描述
这两个信息由你创建项目时指定。
有四个文件值得让我们关注。

  1. springboot2Application.java其中springboot2是你的项目名,所以该文件名的组成部分应该是

    项目名 + Application

  2. application.properties关于对项目相关配置可以写在此处

  3. springboot2ApplcationTests.java作为测试文件

  4. pom.xml作为maven的配置文件

springboot2Application.java文件的代码是

package com.liang;

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

@SpringBootApplication
public class Springboot2Application {

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

你可以对这个主方法进行运行,会发现它只是打印一些日志,然后就结束了运行。这个类是程序入口

application.properties为空

springboot2ApplicationTests的代码如下

@RunWith(SpringRunner.class)
@SpringBootTest
public class Springboot2ApplicationTests {

    @Test
    public void contextLoads() {
    }

}

最后我们打开pom.xml

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.1.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

这段可以看出来,你的项目是子项目,其父项目是spring-boot-starter-parent

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

这段是你项目依赖spring boot的包,这两个包下还依赖了很多spring其他的包,其中就有spring-core

Hello World

接下来,我们写个关于spring应用的helloworld.
首先打开pom.xml,注入依赖。当这个依赖注入,你发现你springboot2Application文件的主方法将不会停止运行,将会类似tomcat一样

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

然后创建一个包,注意,你创建的包应该在你创建目录的填写的包下,这个包被配置成spring扫描的一个包。
然后编写控制器类,这个类完全按照springMVC的模板那样写即可

package com.liang.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {

    @RequestMapping(value="/hello")
    public String hello(){
        return "hello world";
    }
}

RestController注解代表着可以用json形式返回数据,而忽略返回ModelAndView这种需要页面的支持

然后我们运行springboot2Application程序入口,在运行后,在服务器输入
http://localhost:8080/hello,将看到
这里写图片描述

你也可以用maven打包成一个jar包,用命令行进入maven仓库,找到那个jar包,输入

java -jar jar包名

热部署

我们会发现一个问题,每次我们修改文件和创建文件,都要打开程序入口文件,运行,重新启动项目。如果配置热部署,项目将自动加载变化文件,不用再让我们频繁的去重新项目
在pom.xml文件添加如下配置

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <optional>true</optional>
    <scope>true</scope>
</dependency>
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <!-- 没有该配置,devtools 不生效 -->
                <fork>true</fork>
            </configuration>
        </plugin>
    </plugins>
</build>

添加完成后,重启项目,让项目重新加载pom.xml,热部署便成功配置

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_32020035/article/details/80052147
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-03-01 17:54:58
  • 阅读 ( 1468 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢