spring cloud是建立在spring boot的基础上的,而之前虽然听说过,也随便看了一下spring boot,却没有真正使用,因此还必须先花时间学一下spring boot。

spring boot的理念是“习惯优于配置”,我个人的理解就是尽量减少开发过程中手动的spring相关的配置文件。同时使用spring boot还有一个优点就是,它可以内嵌很多容器,例如tomcat,使得原本可能需要安装tomcat才能运行的web项目,可以直接以运行jar文件的形式启动运行。

spring boot项目创建有多种方式,鉴于目前工作中使用的是eclipse开发工具,因此整个学习过程中,也都是在eclipse中进行。

而eclipse中的创建实际上也是可以有两种方式的,一种是在安装了STS插件之后直接创建,另一种是创建简单的maven项目后,修改pom.xml文件,为了提高效率,我这里就安装了STS插件,以第一种方式创建。

这个过程中还有一个小插曲,我原本的eclipse版本是Mars.1 Release (4.5.1),安装STS的时候安装不成功,说是eclipse版本不匹配,于是安装了新版的eclipse,版本号Neon.3 Release (4.6.3)。但是当我在新版的eclipse中安装好STS后,再来尝试在旧版安装时,居然又一路畅通无阻的成功了。

eclipse中STS安装也有几种方式,我的STS的安装过程是这样的: help –> Eclipse Marketplace –>Popular,然后选择下图中的插件install。 

这个插件安装成功以后,就可以看到在eclipse中new project时会有spring这个选项了(当然了,不知这一个地方有变化),打开之后还会有几个子选项,如图: 

而我快速创建spring boot项目的时候,使用的就是上图中第三个子选项Spring Starter Project。具体步骤是:new –>Project –>Spring Starter Project –>出现的界面中name选项后输入项目名称 –>接下来出现如下图所示界面: 

这里我主要是使用了两个地方,第一个就是选择spring boot version,第二个就是在标示2的位置选择要创建的具体spring boot项目,有很多选项可供选择,而我就选了一个web项目。

创建好的web项目基本结构如下图: 

创建的时候它会自动生成一个带有main方法的类,这个main方法实际上就是spring boot项目的程序入口,我在里边加入了一个@RestController和这样一段代码:

@RequestMapping("/")
String index(){
return "Hello Spring Boot";
}

  

之后整个类的代码如下:

package com.springTest.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; @RestController
@SpringBootApplication
public class SpringBootDemo1Application { @RequestMapping("/")
String index(){
return "Hello Spring Boot";
} public static void main(String[] args) {
SpringApplication.run(SpringBootDemo1Application.class, args);
}
}

当安装好STS插件之后,创建一个简单的spring boot的web项目就是这么简单,不需要像传统的spring项目一样还要配置spring.xml等配置文件以及web.xml文件。

但是需要注意的是,我在第一次创建的时候,spring boot相关的jar包下载不下来,因为公司的maven仓库中没有对应版本的,于是自己修改了maven的配置文件,加入了阿里云的maven仓库:

<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>

当重新配置maven仓库,使得程序编译没有问题后,就可以启动项目了,eclipse中使用run as –>Spring Boot App就可以直接运行,不需要像传统web项目那样要加入到tomcat中才行。

启动成功后浏览器访问localhost:8080,会看到页面如下,一个简单的spring boot web项目就成功创建了。 

本文转载来源:https://yq.aliyun.com/articles/203660

SpringCloud 微服务一:spring boot 基础项目搭建的更多相关文章

  1. 构建微服务:Spring boot

    构建微服务:Spring boot 在上篇文章构建微服务:Spring boot 提高篇中简单介绍了一下spring data jpa的基础性使用,这篇文章将更加全面的介绍spring data jp ...

  2. 微服务下 Spring Boot Maven 工程依赖关系管理

    单体 Spring Boot Maven 工程 最基本的 pom.xml 包含工程信息.Spring Boot 父工程.属性配置.依赖包.构建插件 <?xml version="1.0 ...

  3. Spring boot学习1 构建微服务:Spring boot 入门篇

    Spring boot学习1 构建微服务:Spring boot 入门篇 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框 ...

  4. Spring boot Gradle项目搭建

    Spring boot Gradle项目搭建 使用IDEA创建Gradle工程     操作大致为:File->new->Project->Gradle(在左侧选项栏中)     创 ...

  5. 构建微服务:Spring boot 入门篇

    什么是Spring Boot Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而 ...

  6. SpringCloud(8)微服务监控Spring Boot Admin

    1.简介 Spring Boot Admin 是一个管理和监控Spring Boot 应用程序的开源软件.Spring Boot Admin 分为 Server 端和 Client 端,Spring ...

  7. spring boot 2.0.3+spring cloud (Finchley)8、微服务监控Spring Boot Admin

    参考:Spring Boot Admin 2.0 上手 Spring Boot Admin 用于管理和监控一个或多个Spring Boot程序,在 Spring Boot Actuator 的基础上提 ...

  8. Java微服务之Spring Boot on Docker

    本文学习前提:Java, Spring Boot, Docker, Spring Cloud 一.准备工作 1.1 安装Docker环境 这一部分请参考我的另一篇文章<ASP.NET Core ...

  9. 小马哥-Java 微服务实践 - Spring Boot 系列-01Java 微服务实践 - Spring Boot 系列(一)初体验

    课程github地址 https://github.com/mercyblitz/segmentfault-lessons 传统的web应用架构.微服务是一种架构.不限定什么语言 单体应用和微服务的对 ...

随机推荐

  1. 固定ip地址

    IP.  配置文件写数据库文件连接时,之前一直是就写个.  ; 毕竟之前就自己本地用.现在需要,写ip地址,但是公司点的ip的都是自动获得的.并且过一段时间还会改变. 所以,需要固定一下啊. 首先cm ...

  2. Spring Cloud(2):搭建Eureka

    Eureka Server的搭建: 使用IDEA工具 File->New Project->Spring Initializr->next Next Next->Next创建即 ...

  3. agc007B - Construct Sequences(构造)

    题意 题目链接 给出一个$1-N$的排列$P$,构造两个数组$a, b$满足 Sol 发现我的水平也就是能做一做0-699的题.... 直接构造两个等差数列$a, b$,公差为$20000$ 然后从小 ...

  4. a标签常用跳转

    1.a标签跳转qq <a href="http://wpa.qq.com/msgrd?v=3&uin=123456789&site=qq&menu=yes&qu ...

  5. Vue系列(2):Vue 安装

    前言:关于页面上的知识点,如有侵权,请看 这里 . 关键词:小白.Vue 安装.Vue目录结构.Vue 构建页面流程 ? 初学者安装 vue 用什么好 大家都知道,学 Vue 最好还是去官网学,官网写 ...

  6. ubuntu下JDK安装(更新旧版本JAVA)

    1.sudo apt-get install openjdk-8-jre openjdk-8-jdk 2.默认会安装在 路径为 /usr/lib/jvm/java-7-openjdk-amd64 下面 ...

  7. pta 编程题20 旅游规划

    其它pta数据结构编程题请参见:pta 题目 这个最短路径问题只需要求两点之间的最短路径,因而在Dijikstra算法中当求出目标点的最短路径之后跳出循环即可. #include <iostre ...

  8. windows剪切板暂存

    其实最初是因为在项目中使用了html网页编辑器,通过ie的com组件和javascript通讯完成一些事情,其中有一个功能是插入表格,我们原本使用的range.pasteHTML(HTMLstr);根 ...

  9. js 生成随机数解决缓存的问题

    对于缓存有一个解决方法是在链接后添加随机数 例如登陆后跳转到链接/home,但是有缓存上次用户的登陆名,于是在/home后面加上一个随机数 var href = '/home?'+Math.rando ...

  10. 关于请求时状态为cancel

    项目中发现有一个问题,在我发送某些请求的时候请求一会状态就变为cancel了,我滴个乖乖,这是咋回事,被取消了,后来经过仔细排查后发现了以下两个问题 1.AJAX和form表单同时使用,(form提交 ...