Spring Boot创建和使用(重要)

Spring的诞生是为了简化Java程序开发的!

Spring Boot的诞生是为了简化Spring程序开发的!

Spring Boot就是Spring框架的脚手架,为了快速开发Spring框架而诞生的!!

Spring Boot的优点:

  • 快速集成框架:Spring Boot提供了启动添加依赖的功能,用于秒级集成各种框架。
  • 内置运行容器:无需配置Tomcat等Web容器,直接运行和部署程序。
  • 快速部署项目:无需外部容器即可启动并运行项目。
  • 可以完全抛弃繁琐的XML,使用注解和配置的方式运行项目。
  • 支持更多的监控指标,可以更好的了解项目的运行情况

接下来,我们来了解一下Spring Boot项目的创建吧!

1.通过IDEA创建(主要的创建方式)

专业版:无需任何插件,直接创建Spring Boot项目

社区版:安装插件——》Spring Boot Helper(从社区版2022开始收费,可以考虑使用社区版2021)

当然,对于Spring Boot Helper这个插件等安装好以后,就会发生奇迹般的改名了(插件一样)相当于小时候家长叫你:宁宁,长大了就得叫你全名了~~

安装前:Spring Boot Helper

安装后:Spring Initalizr and Assistant

下面,我们来看一下该插件的具体安装详情:

该插件,虽然标为付费,但如果你的IDEA为2021社区版,那么你就不用管他(付费)
插件,已经帮你找好了,至于怎么安装,点击OK🆗,这就不用教了吧!!

当你安装好该插件之后,进行重启即可!!(重启IDEA!!)

插件已经安装好,IDEA已经重启,那么,此时,当你重新new  project的时候,就会发现:

有一个Spring Initializr模块,当我们选择这个的时候,就是开始创建Spring Boot项目了,然后在选择合适的JDK版本(小编的是JDK1.8版本)

然后Next

注意:第一次创建Spring Boot项目的时候,需要联网,由于第一次创建SPring Boot项目,需要导入依赖,因此可能会出现转圈的状态,你不用担心,等一会便🆗了!

注意:在这里需要选择Maven,JDK的版本为1.8版本!!

该页面主要是添加对应的框架支持(必选)

因此,该页面总的选择需求为:

Next

最后在点击Finshed

完成!!

当你创建好Spring Boot项目之后:

删除该四个文件之后:

点击项目文件,右键:选中Add Framework Support…

在接下来的页面,选中Maven即可,然后点击Ok(该步操做,目的是添加Maven到Spring Boot项目中,当然,等你添加好以后,你就会在IDEA右侧发现Maven标识:

然后,通过Maven来进行刷新,重新导入依赖即可:

当然,对于该操作之后,如果还出现报错问题:

那么,你就需要访问Maven官网了:https://mvnrepository.com/该网址有点慢,请耐心等待

上述问题,主要出现在版本号上面的Bug

因此,我们在Maven中搜索:spring-boot-starter-parent

经过上述的操做之后,我们重新刷新Maven即可!!

当然,如果程序中右侧没有出现对应的Maven相应的图标,则说明当前IDEA没有识别当前的项目为Maven项目:

如果经过上述的几个步骤,发现还是报错,那么就是Maven国内源没有配置好,此时可以参考笔者文章:Spring的创建和使用-CSDN博客

那么,如何来判断Spring Boot项目已经正常创建成功了呢??

启动DemoApplication类main,当控制台打印了启动所用的时间,并且Debug没有中断,这就说明SPring Boot项目已经创建好了!

当然,对于创建Spring Boot项目的方式,也可以通过网页/阿里云的方式来进行创建,在这里本文便不做过多的详解,因为,小编也仅仅是了解过,但是,并没有真正创建过(99.99%的概率是从IDEA来进行创建,其他的时候,大概率是网断了等其他复杂情况,项目不能正常创建就会用之前创建好的SPring Boot项目来应对一下~)

接下来,我们来看一下Spring Boot项目中,剩余的文件,所代表的基本含义吧!

  • java:Java源码根路径(放置Java代码)
  • resources:资源文件和配置信息
  • templates:模板
  • application.prorerties:(整个)当前项目的配置文件
  • test:Java单元测试
  • target:当前项目的字节码,每次运行时,都会生成的文件(但是有时候会有缓存《——》删掉target,再让其重新生成即可(刷新Maven))
  • pom.xml:Maven配置文件(依赖信息)

经过上述的内容,我们也可以看出:Spring Boot的一个思想:约定大于配置!

既然我们已经创建好一个Spring Boot项目了,那么,便开始上手第一个Spring Boot代码吧:网页显示hello world

那么,请看笔者接下来的代码:

package com.example.demo.controller;import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;@Controller
@ResponseBody //加在类上,表示当前类中的所有方法返回的都是非静态页面的数据
public class TestController {@RequestMapping("/hello")public String sayHi(){return "hello world";}
}

运行上述的代码,我们在浏览器中输入:localhost:8080/hello,就会有着下述的运行结果:

这样看来,我们便成功的运行了一个Spring Boot的项目!


下篇文章,小编将会带领大家了解Spring Boot的配置文件和Spring日志文件相关的知识!!

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

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

相关文章

git的用法

目录 一、为什么需要git 二、git基本操作 2.1、初始化git仓库 2.2、配置本地仓库的name和email 2.3、认识工作区、暂存区、版本库 三、git的实际操作 3.1 提交文件 3.2 查看git状态以及具体的修改 3.3 git版本回退 git reset 3.1 撤销修改 四、git分支管理 4.…

fastjson和jackson序列化的使用案例

简单记录一下一个fastjson框架和jackson进行序列化的使用案例: 原json字符串: “{“lockCount”:”{1:790,113:1,2:0,211:0,101:1328,118:8,137:0,301:0,302:0}“,“inventoryCount”:”{1:25062,113:2,2:10000,211:2,101:11034,118:9,137:40,301:903914…

【数据库】聊聊一颗B+树 可以存储多少数据

我们知道数据库使用的数据结构是B树,但是B树可以存储多少数据呢,在面试中也是经常会问的问题,所以我们从根上理解这个问题。 操作系统层面 数据都是存储在磁盘中的,而磁盘中的数据都是以最新单位扇区进行分割。一个扇区的大小是…

大数据平台/大数据技术与原理-实验报告--MapReduce编程

实验名称 MapReduce编程 实验性质 (必修、选修) 必修 实验类型(验证、设计、创新、综合) 综合 实验课时 2 实验日期 2023.10.30-2023.11.03 实验仪器设备以及实验软硬件要求 专业实验室(配有centos7.5系统…

Cortex-M与RISC-V区别

环境 Cortex-M以STM32H750为代表,RISC-V以芯来为代表 RTOS版本为RT-Thread 4.1.1 寄存器 RISC-V 常用汇编 RISC-V 关于STORE x4, 4(sp)这种寄存器前面带数字的写法,其意思为将x4的值存入sp4这个地址,即前面的数字表示偏移的意思 反之LOA…

论文阅读:“Model-based teeth reconstruction”

文章目录 AbstractIntroductionTeeth Prior ModelData PreparationParametric Teeth Model Teeth FittingTeeth Boundary Extraction Reference Abstract 近年来,基于图像的人脸重建方法日趋成熟。这些方法可以捕捉整个面部或面部特定区域(如头发、眼睛…

探索H5的神秘世界:测试点解析

Html5 app实际上是Web app的一种,在测试过程中可以延续Web App测试的部分方法,同时兼顾手机端的一些特性即可,下面帮大家总结下Html5 app 相关测试方法! app内部H5测试点总结 1、业务逻辑 除基本功能测试外,需要关注的…

【微服务专题】微服务架构演进

目录 前言阅读对象阅读导航前置知识笔记正文一、系统架构的演变1.1 单体架构1.2 单体水平架构1.3 垂直架构1.4 SOA架构1.5 微服务架构 二、如何实现微服务架构2.1 微服务架构下的技术挑战2.2 微服务技术栈选型2.3 什么是Spring Cloud全家桶2.4 Spring Cloud Alibaba版本选择 学…

智慧化工~工厂设备检修和保全信息化智能化机制流程

化工厂每年需要现场检修很多机器,比如泵、压缩机、管道、塔等等,现场检查人员都是使用照相机,现场拍完很多机器后,回办公室整理乱糟糟的照片,但是经常照了之后无法分辨是哪台设备,而且现场经常漏拍&#xf…

HarmonyOS4.0系列——02、汉化插件、声明式开发范式ArkTS和类web开发范式

编辑器调整 我们在每次退出编辑器后再次打开会直接进入项目文件中,这样在新建项目用起来很是不方便,所以这里跟着设置一下就好 这样下次进入就不会直接跳转到当时的文件项目中!! 关于汉化 settings → plugins → installe…

耗时一个星期整理的APP自动化测试工具大全

在本篇文章中,将给大家推荐14款日常工作中经常用到的测试开发工具神器,涵盖了自动化测试、APP性能测试、稳定性测试、抓包工具等。 一、UI自动化测试工具 1. uiautomator2 openatx开源的ui自动化工具,支持Android和iOS。主要面向的编程语言…

西南科技大学数字电子技术实验二(SSI逻辑器件设计组合逻辑电路及FPGA实现 )预习报告

一、计算/设计过程 说明:本实验是验证性实验,计算预测验证结果。是设计性实验一定要从系统指标计算出元件参数过程,越详细越好。用公式输入法完成相关公式内容,不得贴手写图片。(注意:从抽象公式直接得出结果,不得分,页数可根据内容调整) 1、1位半加器 真值表: 逻…

flask 上传文件

from flask import Flask, request, render_template,redirect, url_for from werkzeug.utils import secure_filename import os from flask import send_from_directory # send_from_directory可以从目录加载文件app Flask(__name__)#UPLOAD_FOLDER media # 注意&#xff…

Me-and-My-Girlfriend-1

Me-and-My-Girlfriend-1 一、主机发现和端口扫描 主机发现,靶机地址192.168.80.147 arp-scan -l端口扫描,开放了22、80端口 nmap -A -p- -sV 192.168.80.147二、信息收集 访问80端口 路径扫描 dirsearch -u "http://192.168.80.147/" -e * …

深入探索Maven:优雅构建Java项目的新方式(一)

Maven高级 1,分模块开发1.1 分模块开发设计1.2 分模块开发实现 2,依赖管理2.1 依赖传递与冲突问题2.2 可选依赖和排除依赖方案一:可选依赖方案二:排除依赖 3,聚合和继承3.1 聚合步骤1:创建一个空的maven项目步骤2:将项目的打包方式改为pom步骤…

在Linux中对Docker中的服务设置自启动

先在Linux中安装docker,然后对docker中的服务设置自启动。 安装docker 第一步,卸载旧版本docker。 若系统中已安装旧版本docker,则需要卸载旧版本docker以及与旧版本docker相关的依赖项。 命令:yum -y remove docker docker-c…

2304. 网格中的最小路径代价 : 从「图论最短路」过渡到「O(1) 空间的原地模拟」

题目描述 这是 LeetCode 上的 「2304. 网格中的最小路径代价」 ,难度为 「中等」。 Tag : 「最短路」、「图」、「模拟」、「序列 DP」、「动态规划」 给你一个下标从 0 开始的整数矩阵 grid,矩阵大小为 m x n,由从 0 到 的不同整数组成。 你…

设计模式之十二:复合模式

模式通常被一起使用,并被组合在同一个解决方案中。 复合模式在一个解决方案中结合两个或多个模式,以解决一般或重复发生的问题。 首先重新构建鸭子模拟器: package headfirst.designpatterns.combining.ducks;public interface Quackable …

Scala如何写一个通用的游戏数据爬虫程序

以前想要获取一些网站数据的时候,都是通过人工手动复制粘贴,这样的效率及其低下。数据少无所谓,如果需要采集大量数据,手动就显得乏力了。半夜睡不着,爬起来写一段有关游戏商品数据的爬虫通用模板,希望能帮…

Servlet实现一个简单的表白墙网站

文章目录 前言效果展示事前准备HTML、CSS、JavaScript分别负责哪些HTML和CSS构架出页面的基本结构和样式JavaScript 实现行为和交互实现服务器端的业务代码整理pom.xmlweb.xmlmessageWall.htmlMessageServlet.java 前言 前面我们学习了 Java 中知名的 HTTP 服务器 tomcat 的安…