Spring Boot搭建入门

Spring Boot简介

Spring Boot是对Spring进行的高度封装,是对Spring应用开发的高度简化版,是Spring技术栈的综合整合,是J2EE的一站式解决方案。想要精通Spring Boot的前提是需要熟悉Spring整套技术栈原理与内容。

Spring Boot的优点:

1、可以快速创建独立运行的Spring项目且可以与主流框架无缝集成;

2、内置使用了嵌入式的Servlet容器,应用无需打成WAR包;

3、使用了starters自动依赖与版本控制;

4、基于大量的自动配置,简化开发,无需硬编码;

5、只需极少的XML配置文件,无代码生成,开箱即用;

6、提供准生产环境的运行时应用监控;

7、与云计算天然集成等。

微服务

微服务是一组独立的小型服务,但是又可以互相通信,本质上是一种软件的架构风格。微服务架构希望把每个功能独立出来作为一个服务,实现系统的解耦,不会出现单体应用中牵一发而动全身的情况。也便于每个组件的升级与维护,以及整个系统的弹性扩容与收缩。参考链接:Microservices Guide (martinfowler.com)。Spring Boot可以说是为微服务而诞生的。

快速新建一个Spring Boot项目(基于IDEA)

**1、**打开IDEA,新建一个项目,选择Spring Initializr,如下图所示:

**2、**依次填写相关信息,Dependencies中选择Spring Web,此处Spring Boot版本选择的是2.7.7,然后一步步点击Next,最后点击Finish,如下图所示:

**3、**最终生成的项目结构如下图所示:

其中**@SpringBootApplication**为Spring Boot项目的核心注解,标志着这是一个Spring Boot应用,被此注解标注的类是整个项目的启动类,其中main()方法中调用的run()方法是使整个应用启动起来的关键。

复制代码
SpringApplication.run(HelloApplication.class, args);

最终代码如下:

复制代码
@SpringBootApplication
public class HelloApplication {
    public static void main(String[] args) {
        SpringApplication.run(HelloApplication.class, args);
    }
}

**4、**编写简单的Controller层代码作为测试,代码如下:

java 复制代码
@Controller
public class HelloController {

    @ResponseBody
    @RequestMapping("/hello")
    public String hello() {
        return "Hello Spring Boot !";
    }
}

需要注意此处的项目结构中HelloApplication类应该在最外层,如下图所示:

**5、**启动主程序即上面所说的HelloApplication类,启动成功后Console中提示默认端口为8080,在浏览器地址栏中输入定义的接口地址:localhost:8080/hello,浏览器返回自定义的信息,如下图所示:

至此,一个入门级别的Spring Boot项目搭建完毕。

相关推荐
学长毕设23 分钟前
基于SpringBoot的游乐园管理系统-附源码
java·spring boot·后端
橙序员小站34 分钟前
Windows 安装包反复报错?一次排查补上了 5 个 CI 检查点
后端
陈随易39 分钟前
Cloudflare 出钱,Vite 团队挑人,44 个维护者分 30 万美元
前端·后端·程序员
SimonKing1 小时前
震惊:怎么回事,opencode一轮对话耗尽免费额度
java·后端·程序员
装不满的克莱因瓶1 小时前
【SpringAI Alibaba】ReactAgent响应SSE实时流式传输案例实战
java·人工智能·ai·sse·springai
杨凯凡1 小时前
Spring Boot 文件上传怎么做才安全?流式落盘、路径校验与数据库一致性实战
java·spring boot·文件上传·后端安全·数据库一致性
张彦峰ZYF1 小时前
功能齐了不等于能上线:智能工单系统的AI回归测试、安全防护、成本可观测与CI/CD生产部署
后端·企业智能工单系统·评测线·安全线·成本线·部署线
这个昵称不容易1 小时前
旅游管理系统的设计与实现(SpringBoot + MySQL + Vue 前后端分离)
java·springboot·毕设
Rain的Java大神之路1 小时前
LeetCode 37 解数独面试攻略:回溯 + 位掩码 + MRV,从暴力到毫秒级求解
java·后端·leetcode
量化分析码农2 小时前
【Python量化波动率实战 05】你的组合真的分散了吗:滚动相关与分散化收益
后端