SpringBoot系列(二) 环境搭建,创建我的第一个程序HelloWord。
环境准备:
- jdk1.8:java version "1.8.0_231",详见链接
- maven3.x:maven3.3以上版本,详见链接
- IDEA2021:IntelliJ IDEA 2021.1.1 x64,详见链接
Spring Boot 之HelloWorld
功能:实现从web端发送接口请求,服务端收到请求并响应
1、使用Spring Initializr创建
1)File > New > Project

2)选中Spring Initializr,填写Artifact(项目名称)、Group(项目组织)、以及Package name(包名),和选择Loacation(项目存放的目录),点击Next

3)因为创建的是一个Web项目,所以引入Spring Web的相关组件,点击Finish

创建完成后的目录结构:

代码目录:src/main/java/com.cavan.helloword
HellowordApplication启动类资源目录:resource
static:静态资源(jss css 图片 音频 视频)
templates:模板文件(模板引擎freemarker thymeleaf 默认不支持jsp)
application.properties:Spring boot默认的应用外部配置文件单元测试目录:test/java/com.cavan.helloword
配置文件:pom.xml
该文件用于管理源代码、打包方式、项目的依赖关系等等。
2、使用maven创建
1)File > New > Project,选择maven工程

为项目起个名字,这里helloworld-maven,然后点击Finish

2)引入web项目依赖
<!--web项目核心依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version> 2.3.7.RELEASE</version>
</dependency>
<!--测试依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<version> 2.3.7.RELEASE</version>
<scope>test</scope>
</dependency>
3)创建项目的入口类
在包com.cavan.helloworld下创建启动类HelloworldApplication
package com.cavan.helloworld;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* @program: helloworld-maven
* @description: <description>
* @author: cavan
* @create: 2021-11-29 21:54
*/
@SpringBootApplication
public class HelloworldApplication {
public static void main(String[] args) {
SpringApplication.run(HelloworldApplication.class);
}
}
3、编写代码
通常,我们使用三层结构来编写。
应用层(Controller)、服务层(Service)、数据层(Dao)
我们在controller层增加HelloWorld类:
package com.cavan.helloword.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @program: helloword
* @description: <description>
* @author: cavan
* @create: 2021-11-28 10:31
*/
@RestController
@RequestMapping(value = "")
public class HelloWord {
@GetMapping(value = "hello")
public String hello() {
return "hello world";
}
}

并在application.properties配置文件中修改服务端口:
server.port=8888

4、运行
4.1在本地idea运行
1)运行主程序 Run > Run 'HellowordApplication'

2)chorme浏览器访问http://localhost:8080/hello

4.2在Linux环境运行
1)通过mvn clean package 命令打包成helloword-0.0.1-SNAPSHOT.jar;
2)将jar包上传到/root目录下,使用java -jar helloword-0.0.1-SNAPSHOT.jar运行项目代码

3)使用curl访问服务,curl http://localhost:8888/hello

本文代码Gitee链接:
spring Initializr方式:https://gitee.com/cavan2021/springboot/tree/master/helloword
maven方式:https://gitee.com/cavan2021/springboot/tree/master/helloworld-maven
SpringBoot系列(二) 环境搭建,创建我的第一个程序HelloWord。的更多相关文章
- 使用 robotframework 自动化测试系列 二 -----环境搭建
环境搭建是测试人员基础,本质都是不难的,按照流程和步骤一步步做,遇到问题不要担心,解决的问题越多,你理解的也就越多. 1. 安装python环境,python现在有python2 和python3.由 ...
- Python介绍、环境搭建(Eclipse插件)、第一个程序
Python介绍 特点 优雅.明白.简单. 适合领域 1. Web站点和各种网络服务 2. 系统工具和脚本 3. 作为"胶水"语言把其它语言开发的模块包装起来方便使用 和其它语言对 ...
- SpringBoot系列二:搭建自己的第一个SpringBoot程序
声明:本文来源于MLDN培训视频的课堂笔记,写在这里只是为了方便查阅. 一.根据官网手工搭建(http://projects.spring.io/spring-boot/#quick-start) 1 ...
- 从零开始学Xamarin.Forms(二) 环境搭建、创建项目
原文:从零开始学Xamarin.Forms(二) 环境搭建.创建项目 一.环境搭建 Windows下环境搭建: 1.下载并安装jdk.Android SDK和NDK,当然还需要 VS2013 ...
- 一、springBoot简介与环境搭建
前言:学习计划 1.springBoot环境搭建 2.springBoot入门 3.srpingBoot整合Mybatis 4.springBoot整合Redis,Redis集群 5.springBo ...
- 1、 小白带你入坑xamarin系列之环境搭建和准备
重点提示 由于xamarin发展更新很快 目前教程部分内容已经过时 请注意下载最新版本 2018.05.23 www.xamarin.com 1. 小白带你入坑xamarin系列之环境搭建和准备 ...
- 从零開始学Xamarin.Forms(二) 环境搭建、创建项目
一.环境搭建 Windows下环境搭建: 1.下载并安装jdk.Android SDK和NDK.当然还须要 VS2013 update 2(VS2010.VS2012均可)以上. a. 最新 ...
- PHP Laravel系列之环境搭建( VirtualBox+Vagrant+Homestead+系列网址)
搭建环境从来都是阻挡一门新技能的最致命的硬伤,为了这个环境,我又是花费了半天的时间,各种问题层出不穷,下面基于网上的一些教程(我看到的都多少有些问题) 开始的时候是在实验楼这个平台上开始学习的,不过 ...
- Selenium+Python系列 - 开发环境搭建
一.写在前面 我从未想过自己会写python系列的自动化文章,有些同学会问,那你现在为什么又开始写了? 不止一个人找过我,问我可以写一些Python自动化的文章吗,答案是肯定的. 笔者Java党,整P ...
- 「译」JUnit 5 系列:环境搭建
原文地址:http://blog.codefx.org/libraries/junit-5-setup/ 原文日期:15, Feb, 2016 译文首发:Linesh 的博客:环境搭建 我的 Gith ...
随机推荐
- CSP 考前集训 10/15
\({\color{Green} \mathrm{A\ -\ 染色}}\) 观察此题,我们可以发现正序维护不好求,会有红点被覆盖等情况. 考虑倒着求,每一次如果操作是红那么久看区间内有多少已经染色的点 ...
- Dubbo Mesh:从服务框架到统一服务控制平台
简介: Apache Dubbo 是一款 RPC 服务开发框架,用于解决微服务架构下的服务治理与通信问题,官方提供了 Java.Golang 等多语言 SDK 实现. 作者:Dubbo 社区 Ap ...
- 阿里云CDN产品经理陈章炜:边缘创新技术和落地实践
简介: CDN除了加速外,不断被赋予更多价值.在阿里云CDN推出的<极速奔跑吧 2021>首场直播中,阿里云架构师和产品经理不仅对近期阿里云发布的CDN产品最佳实践图进行了详细解读,还对C ...
- 让容器跑得更快:CPU Burst 技术实践
简介:让人讨厌的 CPU 限流影响容器运行,有时人们不得不牺牲容器部署密度来避免 CPU 限流出现.我们设计的 CPU Burst 技术既能保证容器运行服务质量,又不降低容器部署密度.CPU Bur ...
- [FAQ] VsCode 同时多行编辑
[多光标自定义编辑] 按住 alt 键,鼠标左键点击,出现多个光标. [批量选中匹配编辑] 鼠标选中字符,按快捷键 ctrl + shift + L,字符的右侧都出现光标,可同时编辑. Tool: ...
- [FE] uViewUI u-navbar 曲线解决 uni onNavigationBarButtonTap 的限制与失效
uni 自带的 navigation bar 对于普通的导航需求是够用的,也允许 onNavigationBarButtonTap 加点击事件. 但是会出现异常Bug,表现为在内部页面一番操作后,再返 ...
- K8s控制器---Replicaset(7)
一.Replicaset(目前少用了) 1.1 控制器管理pod 什么是控制器?前面我们学习了 Pod,那我们在定义 pod 资源时,可以直接创建一个 kind:Pod 类型的自主式 pod,但是这存 ...
- 简说Python之列表,元祖,字典
目录 Python列表 创建列表 添加元素 查询元素 列表分片 分片简写 修改元素 一些其他添加列表元素的方法 extend() insert() 删除元素 remove()删除 del 通过索引删除 ...
- 05. C语言数组
数组用于将多个数据集中存储,方便管理,此文将任何集中存储一组数据的语句都称为数组,数组根据存储数据的类型和方式分为以下类型:数组.结构体.共用体.枚举. [数组] 数组用于存储多个类型相同的数据,可以 ...
- 7月 Splashtop上线了这些新功能 快来看鸭
经过我们的攻城狮天天努力,我们的软件又得到了升级和完善,上线了一些有用的新功能和增强功能,快来看看吧. Splashtop已为Splashtop Business Access,Splashtop远程 ...