Spring Boot入门

目录

前言

1.安装Spring Boot Help插件

1.1查找插件并下载

2.2安装插件

2.Idea创建SpringBoot项⽬

3.其他方式创建SpringBoot项⽬

3.1 Spring 官网创建

3.2 阿里云创建 

 3.3 不基于任何页面,插件进行创建

4.⽬录介绍

5.项目启动

5.1项目启动前可能会遇到的问题

 5.1.1关于Maven

 5.1.2包和插件下载不下来

 5.2运⾏项⽬成功

 5.3端口号冲突

5.3.1把占用8080端口的程序关闭

5.3.2修改端口号 

 6.请求响应流程分析

7.访问出错怎么办

7.1⽆法访问此⽹站

7.2状态码

7.2.1  404 

7.2.2  500  


前言

Spring Boot 的诞⽣是为了简化 Spring 程序开发的,如果你不太了解什么是Spring Boot,可以看下Spring官⽅ 的介绍。
Spring | Homeicon-default.png?t=N7T8https://spring.io/

1.安装Spring Boot Help插件

如果你使⽤的Idea 是专业版则不需要安装Spring Boot Help插件, Idea已经集成了。但如果你的Idea是社区版,你想用Idea 创建Spring Boot 项⽬的话,你必须安装Spring Boot Help插件。

1.1查找插件并下载

插件对Idea版本有要求的, 请看准下载。
下载 插件地址: Versions: Spring Boot Helper Plugin for JetBrains IDEs | JetBrains Marketplaceicon-default.png?t=N7T8https://plugins.jetbrains.com/plugin/18622-spring-boot-helper/versions但官网可能不会提供适合较低idea版本的 Spring Boot Help插件。可能要你自行寻找资源。

2.2安装插件

选择刚才下载的插件, 安装, 重启Idea即可.

安装好之后,它的名字就变成了 Spring Initializr and Assistant,如下图所示:

 


2.Idea创建SpringBoot项⽬

接下来我们来创建 Spring Boot 项⽬:
File -> New ->Project
1.

2. 

上图说明

version: 0.0.1-SNAPSHOT

(1)  0.0.1 从左到右对应着大,中,小三个版本。

    如果有较大的功能变更,大版本的数字增加,如:1.0.1

    有中等的功能变更,中版本的数字增加。

     有小的功能变更如修复漏洞,小版本的数字增加。

(2)SNAPSHOT表示非稳定版本,意思是可能会发生变化,发布者可以发布新版本对已上传的版本进行覆盖。我们正常使用的都是发布版,也就是release

 3.

上图说明

(1)SpringBoot版本 , 选择任意3.X的, 这个版本会随着SpringBoot的升级⽽发⽣变化, 不固定 3.X版本使⽤的是jdk17, 3.X以下使⽤的是JDK8
(2)打勾表⽰创建项⽬之初, 就引⼊的第三⽅依赖(框架, 插件, 组件等...后⾯再细讲)

4.

 点击 Create 就完成 Spring Boot 的项⽬创建了。


3.其他方式创建SpringBoot项⽬

3.1 Spring 官网创建

Spring | Homeicon-default.png?t=N7T8https://spring.io/进入界面

1.

2.

3.

 对比:

3.2 阿里云创建 

Cloud Native App Initializer (aliyun.com)icon-default.png?t=N7T8https://start.aliyun.com/

 3.3 不基于任何页面,插件进行创建

创建空的Maven项目,自己写依赖,启动类。、


4.⽬录介绍

Spring Boot 项⽬的⽬录:

1.src/main/java: Java 源代码
2.src/main/resources: 为静态资源或配置⽂件:
   2.1/static:静态资源⽂件夹, ⽐如前期学的js, css, html等静态⽂件, 不需要服务器数据进⾏绑定的
⻚⾯
    2.2 /templates:模版资源⽂件夹, 主要存放动态模板⽂件, ⽐如JSP, Freemarker, Thymeleaf等需
要服务器动态渲染数据的⽂件
3.src/test/java: 测试代码源代码
4. target: 编译后的⽂件路径
5.pom.xml: maven 配置⽂件

对比: 

 


5.项目启动

5.1项目启动前可能会遇到的问题

 5.1.1关于Maven

一定要点,这是用来确定你这是一个Maven项目(是否使用Maven进行加载构建)

问题:如果没有弹出或不小心叉掉,我们又应该怎么设置?

 5.1.2包和插件下载不下来

我们可以做些什么呢?

1.确认是否是国内源

2.切换网络

但可能会导致我们jar包下载一半。

此时我们可以清除本地厂库或指定jar包路径。

3.重新刷新Maven

4.build插件下载不下来

一般是添加版本号

在哪添加?

 5.2运⾏项⽬成功

代码:

如何启动?

常⻅的Web服务器有: Apache,Nginx, IIS, Tomcat, Jboss等  

SpringBoot 内置了Tomcat服务器, ⽆需配置即可直接运⾏

Tomcat是常⻅的实现了 Servlet 规范的产品

Tocmat默认端⼝号是8080, 所以我们程序访问时的端⼝号也是8080 

 5.3端口号冲突

5.3.1把占用8080端口的程序关闭

1.查看那个程序占了8080

2.关闭程序

(1)cmd指令关闭

(2) 用任务管理器关闭

5.3.2修改端口号 


 6.请求响应流程分析

浏览器输⼊URL之后, 发起请求, 就和服务器之间建⽴了连接
浏览器:
• 输⼊⽹址:http://127.0.0.1:8080/hello
    ◦ 通过IP地址127.0.0.1定位到⽹络上的⼀台计算机, 127.0.0.1就是本机
    ◦ 通过端⼝号8080找到计算机上对应的进程 , 也就是在本地计算机中找到正在运⾏的8080端⼝的
程序
    ◦ /user/sayhi是请求资源位置
▪ 资源:对计算机⽽⾔资源就是数据
• web资源:通过⽹络可以访问到的资源(通常是指存放在服务器上的数据)
http://127.0.0.1:8080/user/sayhi ,就是向本地计算机中的8080端⼝程序,获取资源位置 是/user/sayhi的数据 8080端⼝程序,在服务器找/hello位置的资源数据,发给浏览器
服务器:
• 接收到浏览器发送的信息(如:/user/sayhi)
• 在服务器上找到/user/sayhi的资源
• 把资源发送给浏览器


7.访问出错怎么办

正常时:

7.1⽆法访问此⽹站

出错小结: 

1.服务未成功启动, 也就是tomcat未启动
2.IP或端⼝写错

7.2状态码

7.2.1  404 

404 表⽰⽤户访问的资源不存在. ⼤概率是 URL 的路径写的不正确.

 出错小结: 

1.url单词拼错

2.注解写错

7.2.2  500  
服务器出现内部错误. ⼀般是服务器的代码执⾏过程中遇到了⼀些特殊情况(服务器异常崩溃)会产⽣这 个状态码.
错误实例:
    @RestControllerpublic class UserController {@RequestMapping("/sayHi")public String sayHi(){int res = 10/0;return "hello,Spring";}}

此时

查错的方法:看日志 


以上为我个人的小分享,如有问题,欢迎讨论!!! 

都看到这了,不如关注一下,给个免费的赞 

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

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

相关文章

统计绘图 | 既能统计分析又能可视化绘制的技能

在典型的探索性数据分析工作流程中,数据可视化和统计建模是两个不同的阶段,而我们也希望能够在最终的可视化结果中将相关统计指标呈现出来,如何让将两种有效结合,使得数据探索更加简单快捷呢?今天这篇推文就告诉你如何…

Nginx 网站服务

一.Nginx 概述 1.一款高性能、轻量级Web服务软件 稳定性高 系统资源消耗低 对HTTP并发连接的处理能力高 单台物理服务器可支持30000~5000个并发请求 2.Nginx与Apache区别 最核心的区别在于 Nginx 采用异步非阻塞机制,多个连接可以对应一个进程;Apache 采…

HyperAI超神经 x MoonBit | 与中科院、Intel 等专家共话基础软件前沿发展与期待

本次 Meetup 将讨论 MoonBit 编程语言、RuyiSDK、WAMR和 RISC-V 等技术,来现场参与不仅可以学习到最前沿的技术知识,更可与大咖面对面互动交流心得,还有美食茶歇与精美礼品,期待你的到来! 扫码立即报名 ⬇️ 活动详情…

自动驾驶#芯片-1

概述 汽车是芯片应用场景之一,汽车芯片需要具备车规级。  车规级芯片对加工工艺要求不高,但对质量要求高。需要经过的认证过程,包括质量管理标准ISO/TS 16949、可靠性标准 AEC-Q100、功能安全标准ISO26262等。  汽车内不同用途的芯片要求…

SAP CS01/CS02/CS03 BOM创建维护删除BAPI使用及增强改造

BOM创建维护删除相关BAPI的使用代码参考示例,客户电脑只能远程桌面,代码没法复制粘贴出来,只能贴图。 创建及修改BAPI: CSAP_MAT_BOM_MAINTAIN。 删除BAPI: CSAP_MAT_BOM_DELETE。 改造BAPI: CSAP_MAT_BOM_MAINTAIN 改造点1:拷…

贪吃蛇小游戏简单制作-C语言

文章目录 游戏背景介绍实现目标适合人群所需技术浅玩Window API什么是API控制台程序窗口大小,名称设置 Handle(句柄)获取句柄 坐标结构体设置光标位置 光标属性获取光标属性设置光标属性 按键信息获取 贪吃蛇游戏设计游戏前的初始化设置窗口的大小和名称本地化设置 宽字符Waht …

金士顿U盘被写保护的解决方法

1.适用的U盘芯片信息 USB设备ID: VID 0951 PID 1666 设备供应商: Kingston 设备名称: DataTraveler 3.0 设备修订版: 0110 产品制造商: Kingston 产品型号: DataTraveler 3.0 产品修订版: PMAP 主控厂商: Phison(群联) 主控型号: PS2251-07(PS2307) - F/W 08.03.50 [2018-…

ViewModel原理分析

认识 ViewModel ViewModel 是一种用来存储和管理UI相关数据的类。 ViewModel 的作用可以从两个方面去理解: UI界面控制器:在最初的MVC模式中,由于 Activity / Fragment 承担的职责过重,因此在后续的 MVP、MVVM 模式中&#xff…

【C++进阶】模板与仿函数:C++编程中的泛型与函数式编程思想

&#x1f4dd;个人主页&#x1f339;&#xff1a;Eternity._ ⏩收录专栏⏪&#xff1a;C “ 登神长阶 ” &#x1f921;往期回顾&#x1f921;&#xff1a;栈和队列相关知识 &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; ❀模板进阶 &#x1f9e9;<&…

OpenGauss数据库-8.权限管理

第2关&#xff1a;权限设置 gsql -d postgres -U gaussdb -W passwd123123 CREATE ROLE lily WITH CREATEDB PASSWORD passwd123123; GRANT lily TO gaussdb; 第3关&#xff1a;管理员 gsql -d postgres -U gaussdb -W passwd123123 CREATE USER peter WITH SYSADMIN PASSWOR…

uniapp地图选择位置

直接上代码 通过一个点击事件调用官方api即可调用 点击调用成功后显示如下 然后选择自己所需要的位置即可

解读光纤模块的参数有哪些

光模块的具体参数有传输速率、传输距离、中心波长、光纤类型、光口类型、工作温度范围、最大功耗等。下面给大家详解一下各个参数的作用 因为光纤本身对光信号有色散、损耗等副作用。因此不同类型的光源发出的光所能传输的距离不一样。对接光接口时&#xff0c;应根据最远的信号…

AutoKG:为语言模型打造高效自动化知识图谱

在人工智能领域&#xff0c;大型语言模型&#xff08;LLMs&#xff09;如BERT、RoBERTa、T5和PaLM等&#xff0c;以其在自然语言处理&#xff08;NLP&#xff09;任务中的卓越性能而著称。然而&#xff0c;这些模型在提供信息时可能会产生“幻觉”&#xff0c;即提供看似合理但…

Vue 路由传递参数 query、params

1、to的对象写法,绑定参数 <template> 2 <ul> 3 <li v-for"m in messlist" :key"m.id"> 4 <router-link :to"{ //使用params时&#xff0c;这个路径必须用name及别名......name: xiangqing, path: /bbb/message/deta…

Python酷库之旅-比翼双飞情侣库(01)

目录 一、xlrd库的由来 二、xlrd库优缺点 1、优点 1-1、支持多种Excel文件格式 1-2、高效性 1-3、开源性 1-4、简单易用 1-5、良好的兼容性 2、缺点 2-1、对.xlsx格式支持有限 2-2、功能相对单一 2-3、更新和维护频率低 2-4、依赖外部资源 三、xlrd库的版本说明 …

如何格式化SQL语句(以MySQL和SQLynx为例)

目录 1 SQLynx 格式化MySQL的SQL 语句功能介绍 1.1 主要特点 1.2 使用步骤 1.3 操作示例 2 结论 SQLynx 是一款功能强大的 SQL 集成开发环境&#xff08;IDE&#xff09;&#xff0c;它提供了多种工具和功能来提高用户的生产力和代码质量。其中&#xff0c;SQL 语句的格式…

Mybatis Log Free

安装后重启 在 application.yml 配置 configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl 选择效果

Java---BigInteger和BigDecimal和枚举

1.简介 1.BigInteger可以支持任意长度的整数 2.BigDecimal可以支持任意精度的浮点数 3.用来做精确计算 2.创建方式 new BigInteger(); new BigInteger(参数1,进制)&#xff1a;可以将不同进制转成10进制显示 new BigDecimal(); BigInteger.valueOf(); BigDecimal.valueOf();…

vue30:props详解

1&#xff1a;props类型校验&#xff1a; 2&#xff1a;props类型自定义校验&#xff1a; 3:子组件不能通过prop直接修改父组件的数据

阿里云物联网平台案例教程

1、定义&#xff1a; ​ 物联网&#xff08;简称IOT&#xff09;把任何物体与物联网相连接&#xff0c;进行消息的交换和通信&#xff0c;实现对物品的智能化识别。简单说是&#xff1a;物联网就是把所有的物体连接起来相互作用&#xff0c;形成一个互联互通的网络&#xff0c…