Spring Boot 创建项目详细介绍

简介: 如何创建一个 Spring Boot 项目,以及自动生成的目录文件作用。

上篇文章简单介绍了 Spring Boot(Spring Boot 详细简介!),还没看到的读者,建议看看。

下面,介绍一下如何创建一个 Spring Boot 项目,以及自动生成的目录文件作用。

Maven 构建项目

访问 http://start.spring.io,选择

  • 构建 Maven 项目、
  • Java 语言、
  • Spring Boot 版本(发文之前的稳定版为 2.4.1)
  • Group:公司英文简写
  • Artifact:项目唯一标识
  • Name:项目名称,建议使用英文
  • Description:项目描述
  • Package name:包名,一般为公司英文简写,和Group类似
  • Packaging:打包方式,目前大部分都是 Jar 包
  • Java:Java 版本,我这里选择 8

最后点击底部的【GENERATE】,这时就会自动下载压缩包。

接着使用 Idea 导入选择已解压的文件目录即可

Idea 构建项目

这里以 IntelliJ IDEA 为例。

  1. 依次选择 File -> New -> Project,在弹窗框中,选择左侧的 Spring Initializr
  2. 填写上面类似的内容,然后点击 Next
  3. 最后确定无误后,点击 Finish即可

image-20210112221937619

项目结构介绍

image-20210112222141802

如上图所示,Spring Boot 项目结构如下

  • src/main/java 主程序入口和项目开发
  • src/resources 项目配置文件
  • src/test/java 测试程序

此外,建议在包名(我的是com.geshanzsq)下分别新建 controller、domain、service、mapper,这些分别表示

  • controller:页面访问控制,也就是 api,
  • domain:主要用于实体类和数据访问层(mapper)
  • service:业务处理
  • SpringBootProjctApplication.java:主程序,创建项目时会自动创建,一般为项目名称+Application.java

最后,启动 SpringBootProjctApplication 主程序。这样就完成 Java 项目配置了。

注:controller、domain、service、mapper 包,需要放在 SpringBootProjctApplication.java 主程序同包名或放在主程序下,否则主程序会扫描不到,导致报错。

Web 模块

在配置之前,先说明一下 pom.xml 文件。此文件包含 Spring Boot 版本、项目基本信息、第三方 Jar 包 Maven 引用。

Web 模块.png

所以,我们引用 Web 模块时,需要在 pom.xml 的 dependencies 添加以下代码

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

其中,pom.xml 有两个默认的 模块

  • spring-boot-starter:Spring Boot的核心启动器,包含了自动配置、日志和YAML。
  • spring-boot-starter-test:支持常规的测试依赖,包括JUnit、Hamcrest、Mockito以及spring-test模块。

编写 Controller api 内容

在 controller 包下新建 TestController.java,内容如下

@RestController
public class TestController {
   
    @GetMapping("/test")
    public String test() {
   
        return "你好,我是 Spring Boot 项目测试!";
    }
}

这时,我们启动主程序,在浏览器输入localhost:8080/test,就可以看到返回的结果。是不是很简单,只需要很少的配置,就可以创建一个 Java Web 项目了。

image-20210112225157953

resouces application 配置

resources 下有个 application.properties文件,此文件是配置项目各种信息。比如:端口号、服务名称、数据库配置、redis配置等。端口号默认为 8080,所以上面访问时的端口为 8080。

由于 yml 配置比较美观,我一般都是把 application.properties 改为 application.yml。

resouces application 配置.png

总结

使用 Spring Boot 可以快速简单的构建项目,无需繁琐的配置。我们不用关心各框架直接的兼容,当我们想用某个依赖时,只需简单的引入和配置就可以了。非常方便我们构建项目,适用于各种单体和微服务项目!

实践才能检验是否已经了解和使用,赶紧去试试吧!下次给大家讲解如何配置数据库、Mybatis 等。

相关文章
|
29天前
|
前端开发 Java 数据库连接
Spring Boot 详细简介!
Spring Boot 是什么?能干啥?
248 0
Spring Boot 详细简介!
|
1月前
|
人工智能 Kubernetes Cloud Native
从百炼到 FDE:六大门派里,工程师该选哪一段?
在百炼、Qwen 这类大模型平台上,企业已能很快拿到一个模型。但「拿到模型」和「用进业务」之间,还差一支能把 AI 部署落地的人——FDE(前沿部署工程师)。这篇按身份把约 95 家玩家切成 6 类,每类配技能栈地图,帮你在通义/百炼生态里找到切入角色。—— 模型厂(①,含通义/百炼背后能力)造模型,云厂(②)供算力,AI 原生(③)做产品,咨询(④)给方案,外包(⑤)做交付;第六类做新媒体热度,与前五类并列。
174 3
|
Java Maven
最快的 maven repository--阿里镜像仓库
国内速度超快的maven repository
163779 0
|
28天前
|
人工智能 JavaScript API
DeepSeek Harness 实测:大模型为什么还需要 Harness?
本文深度评测DeepSeek Harness——国产AI编程Agent新工具。作者实测三大任务(幸存者游戏、俄罗斯方块、梁子滑动变阻器),对比GPT/Codex,分析完成时间、Token消耗、费用与效果,并详解其“模型为脑、Harness为手脚”的执行闭环机制及蓬勃发展的插件生态(文件引用、多模态、数据库等)。
431 7
DeepSeek Harness 实测:大模型为什么还需要 Harness?
|
29天前
|
关系型数据库 MySQL Linux
Linux 安装 MySQL 8 数据库(图文详细教程)
本教程手把手教你如何在 Linux 安装 MySQL 数据库。图文详细教程!
130 3
Linux 安装 MySQL 8 数据库(图文详细教程)
|
1月前
|
弹性计算 编解码 小程序
阿里云轻量应用服务器适合干什么?个人博客、企业官网或者小程序都可以吗?
阿里云轻量应用服务器专为轻量级建站与开发场景设计,支持快速搭建个人博客、企业官网、小程序后端、论坛、电商站及学习测试环境。提供应用镜像一键部署,操作简单、成本低廉,适合中小规模业务。高负载场景建议选用ECS。阿里云轻量应用服务器官网:https://t.aliyun.com/U/dwftch
阿里云轻量应用服务器适合干什么?个人博客、企业官网或者小程序都可以吗?
|
29天前
|
数据采集 监控 供应链
1688 商品详情驱动的选品、竞品分析与采购实战指南
1688是“中国制造”的数字入口,汇聚60万源头工厂。本文详解如何通过API接口实现数据化选品:解析批发价阶梯、库存、供应商资质等核心字段;构建四层选品漏斗;以图搜款溯源跨境爆款;建立采购评分卡与动态监控模型,助力高效决策。(239字)
|
1月前
|
缓存 安全 网络协议
AiWCLOUD 免备案CDN,过移动屏蔽,不限内容在边缘协议优化的底层逻辑下
本文深度解析AiWCLOUD免备案CDN技术内核:以Anycast+GSLB智能调度、QUIC/BBR跨境传输优化、分层缓存架构及边缘WAF+eBPF安全防护四大支柱,揭示其超越“免备案”的真实竞争力,助力架构师穿透营销话术,实现高效、合规、安全的出海业务部署。(239字)
70 3
|
29天前
|
人工智能 JavaScript API
阿里云百炼CLI全解:命令行工具接入AI Agent实操与完整能力指南
在AI Agent快速迭代的开发环境中,开发者经常会遇到一个现实难题:不同AI智能体框架对接云端大模型、知识库、多模态生成工具时,需要反复编写接口代码,处理鉴权、请求封装、返回解析、异常重试等大量重复逻辑。每切换一套Agent框架,就要重新适配一整套API调用逻辑,不仅消耗大量开发时间,还容易出现鉴权不一致、参数不兼容、多工具能力无法复用等问题。百炼CLI作为官方开源的命令行工具,把平台上百款大模型、知识库检索、联网搜索、图像视频生成、语音处理等能力全部封装为终端可直接调用的指令,原生面向各类AI Agent做适配,支持脚本调用、CI流水线集成、本地Agent框架插件接入,大幅降低AI智能体的
136 1
|
29天前
|
XML Java 数据格式
Spring中引入增强(IntroductionAdvice)的底层实现原理
一个 Java 类,没有实现A接口,在不修改Java类的情况下,使其具备A接口的功能。

热门文章

最新文章