1、环境准备

1.1、Maven安装配置

Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。

下载Maven可执行文件

cd /usr/local
sudo wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
sudo tar zxvf ./apache-maven-3.6.3-bin.tar.gz
sudo rm -rf apache-maven-3.6.3-bin.tar.gz

编辑~/.bash_profile文件

vim ~/.bash_profile

加入以下内容

export MAVEN_HOME=/usr/local/apache-maven-3.6.3
export PATH=${PATH}:${MAVEN_HOME}/bin

使得环境变量生效

source ~/.bash_profile

1.2、IDEA配置

打开配置界面,搜索Maven,将红框中的配置换为自己的安装的目录

2、编写第一个程序

我们以创建一个RESTFUL的web接口为例

2.1、新建一个Maven项目

选择新建项目

左边菜单选择Maven,点击下一步

Name中输入Hello,点击完成

新建完成之后,IDEA右下角会有一个弹框提示,选择开启,IDE会自动将填写的依赖下载同步到本地

2.2、配置POM

打开根目录的pox.xml,在project标签下加入以下内容

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

以上代码表示pom文件从spring-boot-starter-parent继承,这样会提供很多的默认配置,配置如下

  • Java版本(Java8)
  • 源码的文件编码方式(UTF-8)
  • 依赖管理
  • 打包支持
  • 动态识别资源
  • 识别插件配置
  • 识别不同的配置,如:application-dev.properties 和 application-dev.yml

配置完成之后,加入依赖包spring-boot-starter-web

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

spring-boot-starter-web会自动帮我们引入了web模块开发需要的相关jar包。

2.3、创建入口

先创建Java Class

输入类名称,名称可自定义,我写的是com.enoch.HelloWorldMainApplication

在生成的类上方,加入注解@SpringBootApplication

@SpringBootApplication标注的类是是SpringBoot的主配置类,Spring Boot会运行这个类的main方法来启动应用。

键入psvm自动生成main方法,并在main方法中输入以下内容

package com.enoch;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication
public class HelloWorldMainApplication {
public static void main(String[] args) {
SpringApplication.run(HelloWorldMainApplication.class, args);
}
}

2.4、创建控制器

选中com.enoch,创建controller.HelloController类

类上方加入@Controller注解

package com.enoch.controller;

import org.springframework.stereotype.Controller;

@Controller
public class HelloController {
}

控制器中加入hello方法,并在方法上方加入@RequestMapping注解

package com.enoch.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping; @Controller
public class HelloController { @RequestMapping("/hello")
public String hello() {
return "Hello world";
}
}

RequestMapping的作用是配置访问路由,是接口请求时的path

最后再加入@ResponseBody注解,将hello方法中返回的数据作为响应内容输出

package com.enoch.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody; @Controller
public class HelloWorldController { @ResponseBody
@RequestMapping("/hello")
public String hello() {
return "Hello World";
}
}

2.5、启动web服务

在HelloWorldMainApplication文件中的main方法旁边点击运行按钮

运行成功后命令行会有以下输出,默认启动8080端口

在浏览器访问localhost:8080/hello,输出以下内容即成功

2.6、Jar文件打包

将服务打包为jar文件,方便部署

首先在pom.xml加入插件spring-boot-maven-plugin

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

点击IDE右方的Maven,双击Lifecycle中的package,会自动进行打包

打包成功后会在target中生成对应的jar文件

在命令行执行该文件可以直接启动服务

java -jar merchants-0.1jar

SpringBoot快速上手系列01:入门的更多相关文章

  1. 快速上手系列-C语言之指针篇(一)

    快速上手系列-C语言之指针篇(一) 浊酒敬风尘 发布时间:18-06-2108:29 指针的灵活运用使得c语言更加强大,指针是C语言中十分重要的部分,可以说指针是C语言的灵魂.当然指针不是万能的,但没 ...

  2. ESFramework 4.0 快速上手(01) -- Rapid引擎

    (在阅读该文之前,请先阅读 ESFramework 4.0 概述 ,会对本文的理解更有帮助.) ESFramework/ESPlatform 4.0 的终极目标是为百万级的用户同时在线提供支持,因为强 ...

  3. EF Core 快速上手——EF Core 入门

    EF Core 快速上手--EF Core 介绍 本章导航 从本书你能学到什么 对EF6.x 程序员的一些话 EF Core 概述 1.3.1 ORM框架的缺点 第一个EF Core应用   本文是对 ...

  4. 快速上手 Rook,入门云原生存储编排

    Rook 是一个开源 cloud-native storage orchestrator(云原生存储编排器),为各种存储解决方案提供平台.框架和支持,以与云原生环境进行原生集成. Rook 将存储软件 ...

  5. 使用 mongodb 的 Docker Image 快速上手系列 lab

    Docker 主要的概念 Dockerfile => 用來產生 docker image 用的(介紹) Image => 可以用來產生 docker container Container ...

  6. Flask入门和快速上手

    目录 Flask入门和快速上手 python三大主流框架对比 Flask安装 依赖 可选依赖 创建flask项目 flask最小应用--hello word 非法导入名称 调试模式 路由 唯一的 UR ...

  7. EF Core 快速上手——创建应用的DbContext

    系列文章 EF Core 快速上手--EF Core 入门 EF Core 快速上手--EF Core的三种主要关系类型 本节导航 定义应用的DbContext 创建DbContext的一个实例 创建 ...

  8. EF Core 快速上手——EF Core的三种主要关系类型

    系列文章 EF Core 快速上手--EF Core 入门 本节导航 三种数据库关系类型建模 Migration方式创建和习修改数据库 定义和创建应用DbContext 将复杂查询拆分为子查询   本 ...

  9. SpringBoot学习(七)—— springboot快速整合Redis

    目录 Redis缓存 简介 引入redis缓存 代码实战 Redis缓存 @ 简介 redis是一个高性能的key-value数据库 优势 性能强,适合高度的读写操作(读的速度是110000次/s,写 ...

随机推荐

  1. AFNetWorking3.0.4(Weather Demo)

    参考文章:http://www.jianshu.com/p/99bcc40abb30 demo下载地址:http://pan.baidu.com/s/1eRuYDEi 密码:ma5m 使用最新AFNe ...

  2. 广义线性模型|logistics|Odds ratio|最大似然函数|LR|AIC|

    广义线性模型 y是分类变量 Link function:将分类变量和数值变量放在一起 使用得到结果0 or 1的概率值来评估选0 or1 函数关系: 正比例函数: logistics函数S型曲线: O ...

  3. Apsara Clouder云计算技能认证:云数据库管理与数据迁移

    一.课程介绍 二.云数据库的简介及使用场景 1.云数据库简介 1.1特点: 用户按存储容量和带宽的需求付费 可移植性 按需扩展 高可用性(HA) 1.2阿里云云数据库 RDS 稳定可靠,可弹性伸缩的在 ...

  4. LoadRunner 工具使用

    LoaderRunner 第一天 1.1 性能测试基础 ​ 服务器端性能测试 1.1 什么是性能测试的本质 基于协议模拟用户发出请求(业务的模拟), 对服务器形成一定的负载,来测试服务器的性能指标是否 ...

  5. Android library 传入本地maven仓库

    在项目根目录gradle.properties 添加 #包信息 GROUP_ID = com.chao.myvideo # Licence信息 PROJ_LICENCE_NAME=The Apache ...

  6. bootstrap 学习 ---css样式学习

    bootstrap 适用于响应式布局,移动设备优先的web项目 1.学习bootstrap需要引入bootstrap的css,jquery,bootstrap的js,注意:jquery文件必须在boo ...

  7. android五子棋游戏、资讯阅读、大学课程表、地图拖拽检测、小说搜索阅读app等源码

    Android精选源码 Android 自动生成添加控件 android旋转动画.圆形进度条组合效果源码 一款很强的手机五子棋app源码 android地图拖拽区域检测效果源码 实现Android大学 ...

  8. iOS路由详解

    本文如题,路由详解,注定是一篇详细解释iOS路由原理及使用的文章,由于此时正在外地出差,无法详细一一写出,只能不定时的补充. 一.什么是iOS路由 路由一词来源于路由器,可以实现层级之间消息转发的功能 ...

  9. java中的二维数组基础知识

    二维数组基本知识,毕竟常见的有:概念,初始化,遍历 概念: 理解二维数组,首先要先理解一维数组是什么.一维数组是个容器,存储相同数据类型的容器(这里不再做一位数组的具体介绍).二维数组就是用来存储一维 ...

  10. 快速搭建本地Nuget服务

    一  创建Nuget 服务项目 1.创建一个空白的asp.net web项目,需要.net 4.6以上 2.在Nuget中搜索 nuget.server ,可以看到是由 .Net 基金再维护的,几乎傻 ...