JavaEE >> Spring Boot(1)

Spring Boot

前面已经介绍了 Spring ,是为了简化 Java 程序开发的,而在前面创建的过程中就会发现其实 Spring 还是有点复杂,此时 Spring Boot 就诞生了, Spring Boot 是为了简化 Spring 程序开发的。

Spring Boot 即 Spring 脚手架,为了快速开发 Spring 框架而诞生。

优点:

  • 快速集成框架,Spring Boot 提供了启动添加依赖的功能,⽤于秒级集成各种框架;
  • 内置运⾏容器,⽆需配置 Tomcat 等 Web 容器,直接运⾏和部署程序;
  • 快速部署项⽬,⽆需外部容器即可启动并运⾏项⽬;
  • 可以完全抛弃繁琐的 XML,使⽤注解和配置的⽅式进⾏开发.

Spring Boot 的创建

下载插件

需要安装 Spring Boot Helper 插件,在这里官网已经没免费的下载方式了,云盘下载
下载完成后进行压缩,放到一个指定的位置,用于后续安装插件。

提取码:d80n

安装插件

在这里插入图片描述

找到你所下载的路径,点击压缩包,点击OK就可以将插件安装上了。安装之后重启 IDEA 即可。

创建 Spring Boot 项目

在这里插入图片描述
在这里插入图片描述
注意此处 Java version 的版本,选择与你对应的 JDK 版本,我的是 JDK8,但 Spring Boot 更新后此处没有 8 的版本了,所以此处就随便选择一个,后面配置的时候也可以改成 JDK8 版本.点击下一步:
在这里插入图片描述
此处 Spring Boot 更新后,Spring Boot version 没有 2.x 版本了,和之前一样,随便选择一个,后面配置项里面可以改。这样一来 Spring Boot 项目就创建成功了。

导入配置(JDK8)

本来是不需要导入的,但由于 SpringBoot 更新后无 JDK8 的相关配置,所以需要将原本的 xml 导入到项目中.
在这里插入图片描述
将以下代码覆盖到原本的 xml 上:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.7.17</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>com.example</groupId><artifactId>demo</artifactId><version>0.0.1-SNAPSHOT</version><name>demo</name><description>Demo project for Spring Boot</description><properties><java.version>1.8</java.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis-reactive</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><scope>runtime</scope><optional>true</optional></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><dependency><groupId>io.projectreactor</groupId><artifactId>reactor-test</artifactId><scope>test</scope></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><excludes><exclude><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></exclude></excludes></configuration></plugin></plugins></build></project>

导入完成后,进行配置加载即可,如下:
在这里插入图片描述
在该下面页面中选择 Maven 即可.
在这里插入图片描述

注意:

  • 第一次加载时间可能较长,正常加载完后 pom.xml 是不会报红的.
  • 若 JDK 版本不是 JDK8 请忽略导入这一步

在这里插入图片描述
若出现如下结果,就表示配置成功,Spring Boot 项目就可以成功启动了:
在这里插入图片描述

运行Spring Boot

接下来用 Spring Boot 实现一个与浏览器交互的例子.

首先需要在与启动类同级的目录下创建一个 controller包 ,在包中实现一个简单的运行测试,如下:
在这里插入图片描述

@RestController
@RequestMapping("/test")
public class UserController {@RequestMapping("/sayHi")public String sayHi(){return "[Spring Boot] 你好呀!!!";}
}

启动 Spring Boot 的运行类后,在浏览器中输入 url 就可以显示出来了.
在这里插入图片描述

这里 @RequestMapping() 注解简单理解就是可以设置访问路径
@RestController 注解
在这里插入图片描述
其中 @ResponseBody 注解的作用是将controller的方法返回的对象通过适当的转换器转换为指定的格式之后,写入到 response 对象的 body 区,通常用来返回JSON数据或者是XML数据。
注意:在使用此注解之后不会再走视图处理器,而是直接将数据写入到输入流中,他的效果等同于通过 response 对象输出指定格式的数据。

这样一来,一个简单的 Spring Boot 项目就创建成功了。后续文章会对 Spring Boot 项目如何连接数据库、如何配置相关文件进行介绍。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/3668.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

history日志发送到远程日志服务器

主要目标是设置history信息包含谁、源IP、在哪个目录下、做了什么工作&#xff0c;并实时将日志发送到日志审计服务。 &#xff08;一&#xff09;基础知识 1.logger 是一个shell接口&#xff0c;可以通过该接口使用rsyslog的日志模块 2./etc/profile.d/history.sh比配置/etc…

Android某钉数据库的解密分析

声明 1 本文章中所有内容仅供学习交流&#xff0c;抓包内容、敏感网址、数据接口均已做脱敏处理&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由此产生的一切后果均与作者无关&#xff01; 目的 1 解密app数据库&#xff0c;用数据库软件打开查看信息内容 入手…

【后端】python与django的开发环境搭建指南

安装Git 双击Git 客户端安装文件&#xff0c;在安装页面&#xff0c;单击“Next” 在安装路径选择页面&#xff0c;保持默认&#xff0c;单击“Next” 在功能组件选择页面&#xff0c;保持默认&#xff0c;单击“Next” 在开始菜单文件夹设置页面&#xff0c;保持默认&am…

浅谈rDNS在IP情报建设中的应用

在当今数字化世界中&#xff0c;互联网已经成为人们日常生活和商业活动中不可或缺的一部分。在这个庞大而复杂的网络生态系统中&#xff0c;IP地址是连接和识别各种网络设备和服务的基础。然而&#xff0c;仅仅知道一个设备的IP地址并不足以充分理解其在网络中的角色和行为。为…

win11 桌面图标突然多 绿色小对勾,如何去除掉

突然间桌面图标每个上面都有一个绿色小狗狗&#xff0c;如下图所示&#xff0c;以为中病毒了&#xff0c;后来一查不是。 去除方法 1、鼠标在桌面空白处单击&#xff0c;选择“个性化”&#xff08;或直接按“windows键I键”&#xff09;调出设置菜单。 2、在左侧选择“主题”…

C++:const成员和取地址操作符

目录 一、const成员 二、取地址及const取地址操作符重载 一、const成员 将const修饰的“成员函数”称之为const成员函数&#xff0c;const修饰类成员函数&#xff0c;实际修饰该成员函数 隐含的this指针&#xff0c;表明在该成员函数中不能对类的任何成员进行修改。 注&…

21.基础乐理-等音调扩展篇、为何一共十五个大调

首先 等音调 的概念是基于 等音 的概念&#xff0c;比如下图中的音名&#xff1a;因为用的按键相同&#xff0c;音名不同&#xff0c;所以被称为等音调 然后音名一共有35个&#xff0c;如下图&#xff1a;所以在理论上它会有35个大调&#xff0c;但是人总是倾向于选择简单、简洁…

MAC如何重装系统(怒冲30大洋,才拿到的教程~,收藏点赞兄弟们)

背景 应该是之前装了一些远程的软件&#xff0c;卸载一直不干净&#xff0c;导致电脑很卡&#xff0c;而且网络貌似出现了问题&#xff0c;钉钉直接登陆不上了。其余软件网络倒是还好。所以就去PDD&#xff0c;买了个教程&#xff0c;重装了一下。才发现是mac自带&#xff0c;…

云赛道---AI开发框架

MindSpore 旨在提供端边云全场景的 AI 框架。 MindSpore 可部署于端、边、云不同的 硬件环境&#xff0c;满足不同环境的差异化需求&#xff0c;如支持端侧的轻量化部署&#xff0c;支持云侧丰富的 训练功能如自动微分、混合精度、模型易用编程等。 MindSpore 全场景的几个重…

交互式探索微生物群落与生态功能的关系

微生物群落在生态系统中发挥则重要功能&#xff0c;我们在对微生物群落进行分析时&#xff0c;会将不同分类水平&#xff08;从门到属&#xff09;的微生物类群的相对丰度与测定的某一生态功能进行相关性分析。但由于微生物类群数较多&#xff0c;又有不同的分类水平&#xff0…

leetcode-二叉树的镜像-91

题目要求 思路1 1.遍历一遍二叉树&#xff0c;将左边的结点对应创建一个右边的结点 2.用此方法空间复杂度O(n)&#xff0c;并不是最优 思路2 1.将一个结点的左右子树进行交换&#xff0c;如果左子树还有左右结点&#xff0c;就再交换左子树的左右结点&#xff0c;以此递归下去…

Kubernetes:云原生时代的核心引擎

文章目录 一、Kubernetes简介&#xff1a;引领云原生潮流二、K8s的核心特性&#xff1a;自动化与智能化三、K8s的实践应用&#xff1a;打造高效云原生应用架构四、K8s的挑战与应对&#xff1a;安全与性能并重五、K8s的未来展望&#xff1a;无限可能与挑战并存《Kubernetes快速进…

【windows-搭建Ubuntu22LTS】

一、环境要求 1. windows版本要求 至少Windows 10 2020年5月(2004) 版, Windows 10 2019年5月(1903) 版&#xff0c;或者 Windows 10 2019年11月(1909) 版 2. 控制面板开启相关的程序(需要重启) 二、Microsoft store安装unbuntu 下载后直接运行&#xff08;稍微等会&#…

从开发角度理解漏洞成因(01)

文章目录 PHP开发漏洞环境&#xff08;SQL注入&#xff09;生成前端代码生成后端代码数据库写功能调试功能 测试SQL注入漏洞字符型注入布尔盲注 PHP开发漏洞环境&#xff08;SQL注入&#xff09; 持续更新中… 文章中代码资源已上传资源&#xff0c;如需要打包好的请点击PHPM…

亿道三防onerugged|工业车载电脑在港口正面吊上的应用

港口正面吊是港口作业中至关重要的设备&#xff0c;它承担着装卸集装箱等重要任务。作为专业人员&#xff0c;我深知港口作业的复杂性和挑战性。在这方面&#xff0c;亿道三防onerugged系列的工业车载电脑为港口正面吊的应用提供了一种创新的解决方案。 首先&#xff0c;工业车…

milvus对象存储和消息中间件的工厂设计模式分析

milvus对象存储和消息中间件的工厂设计模式分析 需求 根据参数设置创建mq和storage mq有kafka,pulsar storage有local,minio,remote 配置文件 根据配置文件选择初始化mq和存储: mq:type: pulsarcommon:storageType: minio对于这种类型一个是mq&#xff0c;一个是存储&…

springboot+vue新疆肉牛智慧牧场养殖系统

系统涉及的对象是奶牛。 系统使用员工有管理员和普通员工。 管理员有修改的权限&#xff0c;普通员工没有。 系统需要包含奶牛的编号&#xff0c;种类&#xff0c;体重&#xff0c;健康情况、生长情况、牛奶产量&#xff0c;以及上次更新数据时间等信息&#xff0c;管理员可以对…

关于权限的设计

首先系统权限&#xff0c;每个账号登录后&#xff0c;都需要知道这个账号允许访问哪些api&#xff0c;哪些数据权限&#xff08;一般是指其他账号的一些数据&#xff09; 这里就需要通过角色来关联。 --1.角色绑定菜单&#xff0c;每个菜单设计的时候包含了这个菜单会用到的所…

HarmonyOS 实战开发-使用canvas实现图表系列之折线图

一、功能结构 实现一个公共组件的时候&#xff0c;首先分析一下大概的实现结构以及开发思路&#xff0c;方便我们少走弯路&#xff0c;也可以使组件更加容易拓展&#xff0c;维护性更强。然后我会把功能逐个拆开来讲&#xff0c;这样大家才能学习到更详细的内容。下面简单阐述…

【Linux系统编程】基础指令(二)

&#x1f49e;&#x1f49e; 前言 hello hello~ &#xff0c;这里是大耳朵土土垚~&#x1f496;&#x1f496; &#xff0c;欢迎大家点赞&#x1f973;&#x1f973;关注&#x1f4a5;&#x1f4a5;收藏&#x1f339;&#x1f339;&#x1f339; &#x1f4a5;个人主页&#x…