惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
Google Developers Blog
人人都是产品经理
人人都是产品经理
爱范儿
爱范儿
云风的 BLOG
云风的 BLOG
Last Week in AI
Last Week in AI
H
Hackread – Cybersecurity News, Data Breaches, AI and More
B
Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
H
Help Net Security
B
Blog RSS Feed
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
N
Netflix TechBlog - Medium
S
SegmentFault 最新的问题
The Cloudflare Blog
I
InfoQ
美团技术团队
博客园 - 三生石上(FineUI控件)
MyScale Blog
MyScale Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 司徒正美
L
LangChain Blog
A
About on SuperTechFans
T
The Blog of Author Tim Ferriss
Y
Y Combinator Blog

Java for You

GPU抢不到就换一种:训练任务需要先声明可替代性 - Java for You - java4u Agent不是多想几步就能上线:用状态机管住自动行动 - Java for You - java4u 数据不能集中,算力也不统一:联邦学习终于面对运维现实 - Java for You - java4u OpenAI开始公开模型失配个案:真正重要的是这套报告制度 - Java for You - java4u 广告开始和你对话:Sponsored Agents改变的不是文案 - Java for You - java4u 语义相近却总找错资料?从Embedding看懂向量检索 - Java for You - java4u AI算力开始听电网指挥:比换GPU更现实的增产方法 - Java for You - java4u 票据抽取不一定要上最大模型:先看版式是否真的变化 - Java for You - java4u 临床AI别再只比像不像标准答案,先算医生少改了多少 - Java for You - java4u AI做长程科研,真正稀缺的不是更多Agent而是反证链 - Java for You - java4u AI代码审计最危险的不是漏报,而是团队开始不再相信它 - Java for You - java4u 100万Token不等于模型全记住:从KV Cache看懂长上下文成本 - Java for You - java4u AI写歌有了工程图:YuE2把旋律和和弦放回可编辑层 - Java for You - java4u Claude接入十余种金融系统后,真正稀缺的是可追溯的审批链 - Java for You - java4u 本地语音AI不等于零风险:VoiceStudio最值得看的三条边界 - Java for You - java4u AI代码评审开始跑测试,真正该升级的是团队证据链 - Java for You - java4u 4万星的Agent技能提醒我们:答案太全也可能不可用 - Java for You - java4u 流式JSON为什么总报错?理解结构化输出就能接稳AI接口 - Java for You - java4u 一个浏览器看见飞机船舶与卫星,空间智能的门槛变了 - Java for You - java4u 编码Agent搬出编辑器后,本地优先工作台在解决什么 - Java for You - java4u AI写代码开始像带团队:Qwen Code补上工作流控制台 - Java for You - java4u AI会聊天却不会改3D模型?从Pascal 1.0看懂MCP工具调用 - Java for You - java4u 让AI审科学公式,它最适合当比较员而非裁判 - Java for You - java4u 智能体上线最难的不是提示词:Agents API开始托管运行时 - Java for You - java4u AI任务一多就堵车:问题可能不在模型速度 - Java for You - java4u AI能写无人机控制代码后,安全边界不能只守提示词 - Java for You - java4u AI代码扫描能批量开了,但它还不能替你挡住合并 - Java for You - java4u 机器人动作误差降近九成,真正该先看数据切分 - Java for You - java4u 图片一多首字就慢?用EPD拆开多模态推理三段路 - Java for You - java4u 蛋白预测快2.9倍,科学AI最难的是让整条流水线不空转 - Java for You - java4u
【SpringBoot教程01】五分钟快速构建第一个 SpringBoot 应用 ...
蜗牛 · 2022-06-03 · via Java for You

73 / 100 SEO Score

前言

SpringBoot 的好处自然不必多说,对于想要从事 Java 工作的朋友们来说,可谓是必学的技能。

在我看来,它的优势就是多快好省

  • 功能多,很多常用的能力都有集成;
  • 接入快,简单的几行代码就能完成接入;
  • 维护好,社区活跃度高,有了问题能够第一时间找到解答;
  • 省钱,免费开源项目自然是个人或者企业的最爱。

接下来详细讲下 Spring Boot 的接入教程,方便刚接触这项技术的读者朋友学习。

相关依赖

技术栈:

  • Java 8
  • Maven 3
  • Spring Boot 2.4.2

环境:

  • 操作系统:MacOS(Windows 也类似)
  • IDE(集成开发环境):IntelliJ IDEA 旗舰版 2020.1 版本

Spring Boot 项目初始化

有两种方式:

  1. 官网打包
  2. IDE 生成

官网打包

访问官网:https://start.spring.io/。

指定项目构建方式 Maven,选择语言 Java。

Spring Boot 选择最新稳定版本 2.4.2,项目元数据填写组织和项目相关信息。

右侧依赖选择自己会用到的包,这里我选择了 Lombok 和 Spring Web,前者帮我们少写代码,后者支持 web 页面访问,方便我做演示。

然后点击底下的 GENERATE 按钮,网站会自动生成 zip 包并且下载到本地。

springboot

解压后,我们就可以看到如下的目录结构。HELP 是帮助文档,mvnw 是程序启动命令文件,pom 放置了项目依赖,src 包含了项目的源代码。

图片

IDE 生成

接入插件:

  • 进入 IntelliJ IDEA 的偏好设置,在 Plugins 里搜索 Spring Boot,方框框上打钩,使插件生效。
  • 按提示重启 IDE,即可使用。
图片
spring_boot_plugin

进入 IntelliJ IDEA,点击创建新项目。

图片
ide_rukou

选择 Spring Initializr,指定项目的 Java SDK,选择默认的启动方式,该方式需要联网,点击下一步。

图片
choose_maven

默认需要填写以下信息,如图:

图片
start_input

我改了下名字,叫 course,表明是教程网站的一个项目。同时我把默认的 Java 版本降到了 8,因为这个版本我比较常用。

图片
start_input_java4u

点击下一步,我们看到的是添加依赖的页面,支持关键词搜索,你可以选取自己需要的依赖包。实际效果和官网页面是一致的,这里我依然选择了 Lombok 和 Spring Web。

图片
spring_dep

点击下一步,设置项目名和路径,名称默认取之前 Maven 设置里的 artifact 的值,我一般不会改。

图片
new_project_name

点击完成,IDE 就帮我们建好了 Spring Boot 的项目,文件结构和我们官网下载的包是一致的。

图片
project_page_home

项目会为我们生成一个应用程序启动入口,选中 main 方法运行,这个 Spring Boot 程序就跑起来啦。

图片

以下是启动日志记录,右上角的红色方块代表运行中。再点下红色方块,控制台就会提示程序退出,右上角方块也会变灰。

图片
running_spring_boot

除了利用 IDE 启动 Spring Boot 外,还可以使用项目生成的命令行工具。定位到项目的家目录下,执行以下命令(MacOS/Linux):

 ./mvnw spring-boot:run

Windows 用户执行以下命令:

mvnw spring-boot:run

会看到这个 Spring Boot 项目从构建到编译再到部署的全过程。

图片
cmd_run_1
图片
cmd_run_2

如果想要终止应用程序的话,Ctrl + C 即可。

图片
cmd_stop

刚才的演示过程是没有涉及到 Web 页面的,那如果想看到页面的访问效果,该怎么做呢?

添加 Web 代码

Web 相关的依赖我们在建项目的时候已经引入了,因此只需要增加相关的代码即可。

首先定位到文件 CourseApplication.java,然后在启动类上增加注解 @RestController,同时添加一个 web 访问的方法。

@SpringBootApplication
@RestController
public class CourseApplication {

    public static void main(String[] args) {
        SpringApplication.run(CourseApplication.classargs);
    }

    @GetMapping("/hello")
    public String hello(@RequestParam(value = "name", defaultValue = "World") String name) {
        return String.format("Hello %s!", name);
    }

}

此时启动 Spring Boot,然后打开浏览器访问 http://localhost:8080/hello,就可以看到默认的输出了。为什么端口是 8080 呢?你回去看下启动日志的截图,会发现项目用了 Tomcat 的 Web 服务器,HTTP 的初始化端口是 8080。

图片
default_web_output

当然也可以带参数去访问这个 Get 请求,比如下面这种访问。

图片
spec_web_output

端口我们也可以自己指定,放到应用配置文件 application.properties 中即可。

# 默认的 8080 修改为 9090

server.port=9090

重启程序后,日志打印发生了变化,浏览器访问同样要用新配置的端口才能访问成功。

图片

好了,快速构建 Spring Boot 应用的介绍就到这里,如果对你也有用的话,可以给我点个赞,点个在看,也可以分享给身边朋友,非常感谢读者朋友。

我是蜗牛,正在互联网上疯狂爬行,下期见。


推荐阅读:

万字多图 | 手把手教会你类图时序图等 UML 视图

更多内容请收藏:Java for You


图片