创建第一个Springboot项目(环境准备、环境存在的问题、启动时存在的问题、启动的方式)

一、环境准备

专业版创建springboot,直接有一个选项可以选择

社区版,需要下载一个spring的插件

不要直接点 install 因为这个插件是付费的,直接点安装只有30天使用期限

在里面找免费版本的下载

然后安装

安装完成后,这个插件名会变成

创建新项目 file -> new project

左边出现spring initializr

二、创建SpringBoot 项目 

创建项目

这换成idea2023专业版了

这个界面要联网(这个出自spring官网)

关于Java 版本 ,这里的server url原本是spring 官网 https://start.spring.io/

        但是由于 官网不会把所有的 Java版本展示出来,只会列出最近的核心版本,所以我换成了阿里云 https://start.aliyun.com/

        这样才有了下面的 Java 8 (因为稳定版就是 8 、11 、17)

 然后我修改为自己的项目信息

spring boot版本 选择 2.xx 就可以 (因为2版本使用的是jdk 8,3版本是jdk 17)

不要选择 snapshot 版本(这个是快照版本,不稳定版本)

创建之后,右下角会弹出一个窗口,是否加载为maven 项目 ,点击确定

如果没有弹出窗口,旁边有个maven,点击reload all maven projects

或者 右键项目 选择 添加框架支持,选择maven

1)pom.xml 可能会存在的问题

1.版本会标红

可以顺着 这个 项目id 去中央仓库查找

spring-boot-starter-parent

发现这个 2.7.17 没有release版本

那就直接再pom.xml文件里,将release删除掉就好了

修改完,一定记得 maven 刷新重载一下!!!不然pom.xml的内容无法生效

2.build里的插件标红

我重新点击maven 加载,就好了

如果还是标红,可以直接删掉这个标红的插件(不是很重要)

2)包下载 存在的问题

3)springboot版本选错 (无效目标发行版17)- 解决方案

 settings设置里 -> Java Compiler -> 选择 8

project structure -> project -> SDK 选择1.8

modules 修改为 8

 三、目录介绍

这几个文件是没有用的,删掉都行

.idea : 无论什么文件只要是idea里的都有 这个文件

四、项目启动

spring的启动文件在 src - main - java - 自定义项目名称的驼峰式+Application

启动成功会有这样的类似颜文字表情一样的 spring的图标

虽然启动了,但是这个项目里啥也没有

写一个程序

写完程序,重启springboot

打开网页

五、HTTP

1.请求和响应

2.HTTP状态码

通常情况下:

2xx 成功(200)

3xx 重定向

4xx 客户端错误(例外 404:通常表示请求的url不存在)

5xx 服务端错误

1)404错误:

当我把注解写错时,springboot项目能正常启动

但是访问时,报错 404

1)检查 url 是否正确

2)检查 代码 是否正确(例如:@后面的注解 ,或者路径,pom.xml没有重载)

2)500错误: 

当我 在函数里写了不符合语法的代码,也会报错,但这次是500

通过日志 找到错误

***看日志的技巧:一段一段看,从后往前看

        日志报错可能是很长的,也可能是多种问题并发存在。

        一段一段看,指的是,一段Java日志,通常是如上图这样 java.lang.xx这样的开头,这就是一段的开头,这一段其他的大部分就是 at xxxx 这样的。

        从后往前看,指的是,日志最后一段报错,是最新出现的问题

然后就发现了是 12 行 这里除数为 0,报错了,更正即可

 3)无法访问此网站

通常指 web 服务器没启动(tomcat 没启动)

3.1 忘记启动 tomcat了

例如我停止了这个项目

再次访问就会是 无法访问此网站

3.2 端口号冲突

        可能之前电脑安装过tomcat ,使用的是 8080端口。而 spring boot 项目里也内置了 tomcat ,端口号使用的也是 8080。于是这两个 tomcat 的端口号就会冲突,导致访问 时,不知道是哪一个  。

        可以把tomcat 的端口号修改成别的,或者 直接把其他tomcat 的服务关闭,只保留当前 正在使用的这一个 springboot项目。

解决端口号冲突 - 修改端口号

在resource下,application.properties 文件里

server.port = xxxx(默认是 8080)

        ​​​​​

修改为 8081

重新启动项目 , 看到日志上显示了, 端口号为 8081

这就代表修改成功

再在浏览器上看

六、Springboot 其他创建方式 和 运行方式

1)在线创建Springboot

1. 在官网在线创建

对网络要求高(目前不支持2版本的了,只有3)

https://start.spring.io/

选择完后,点击 GENERATE

(这个是之前可以创建2版本的截图)

2.阿里云上创建(2、3版本的都有) 

虽然官网不能在线创建

https://start.aliyun.com/

2)运行方式

1.maven打包 

双击 package 打包项目        

打包成功后是这样

building jar 后面是路径

build success 是打包成功的意思

可以在这个路径下看到打好的jar包

2.运行jar包 

命令: java -jar

有时候会出现 Springboot-demo-0.0.1-SNAPSHOT.jar中没有主清单属性 这种情况

再pom.xml这里插件里面,有一个mainclass这是主类,程序的启动入口。

skip原本设置为 true 就会跳过构建过程,改为false就可以正常启动了

双击 clean 清除掉 然后再 package 打包,多试几次

启动成功

打开网页正常显示内容

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

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

相关文章

云计算【第一阶段(16)】安装及管理程序

目录 一、linux 应用程序基础 1.1、应用程序与系统命令的关系 1.2、典型应用程序的目录结构 1.3、常见的软件包封装类型 二、RPM软件包管理工具 2.1、rpm命令的格式 2.2、安装,升级,卸载 rpm软件包 安装软件包 升级软件包 卸载软件包 查询软件…

数学建模基础:统计模型

目录 前言 一、概率与统计基础 二、统计模型 三、Matlab统计工具箱 四、实例示范:市场调查分析 步骤 1:数据导入 步骤 2:数据可视化 步骤 3:建立多元线性回归模型 步骤 4:模型验证 步骤 5:模型应…

vue+intro.js实现引导功能

前言: 使用 intro.js这个插件,来实现一个引导性的效果,适用场景,比如:新手引导页,操作说明等等 效果图: 官网地址:点我 实现步骤: 1、安装 npm install intro.js --sa…

【Netty】nio处理acceptreadwrite事件

📝个人主页:五敷有你 🔥系列专栏:Netty ⛺️稳中求进,晒太阳 1.处理accept 1.1客户端代码 public class Client {public static void main(String[] args) {try (Socket socket new Socket("localhost…

【Cloudscapes V2】Blender商城10周年免费领取礼物超逼真的Vdb云和爆炸合集烟雾体积云字体符号轨迹火焰粒子

6月19号的限时免费领取插件挺牛的,可以在blender里渲染体积云、爆炸特效、火焰、烟雾等效果,非常逼真。 Blender商城10周年免费领取礼物:https://blendermarket.com/birthday Cloudscapes V2 - 超逼真的 Vdb 云和爆炸合集 CloudScapes 是 …

如何快速在一台新电脑上安装 Python 环境

一、下载miniconda 1.下载 我们可以在清华大学开源软件镜像站下载最新版本的miniconda。如:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-py38_4.9.2-Windows-x86_64.exe 2.安装 双击exe文件安装,如果没有特殊的需求&#x…

C# 索引器与迭代器分部类详情

文章目录 一、迭代器二、查看Foreach执行中间语言三、foreach实现过程总结四、实现迭代器最常用的方法五、分布类概述及其使用六、索引器概述及声明七、索引器在类中的使用八、索引器在接口中的使用九、总结 一、迭代器 1、迭代器(iterator)解决的是集合…

vue3+ts+vite集成eslint

项目中安装eslint yarn add eslint -Deslint初始化 npx eslint --init按照下方操作即可 安装typescript-eslint/parser yarn add typescript-eslint/parser -D安装vite-plugin-eslint2 yarn add vite-plugin-eslint2 -D配置vite-plugin-eslint2 // vite.config.ts import …

Linux系统编程——进程信号

目录 一,信号预备 1.1 生活中的信号 1.2 技术应用中的信号 1.3 signal函数捕捉信号 1.3 信号的发送与记录 1.4 信号的常见处理方式 二,信号的产生 2.1 核心转储 2.1.1 环境配置 2.1.2 利用core文件进行调试 2.1.3 core dump标志 2.2 通过系统…

所以spring mvc异常处理工作原理是啥

文章目录 spring mvc异常处理(源码分析)概述原理(源码角度)模拟debug前期提要分析4个map4个map的初始化为什么需要基于mappedMethods缓存 总结一下 spring mvc异常处理(源码分析) 概述 spring mvc有下面三…

127.0.0.1与本机IP地址的区别

大家好,今天我们来聊聊一个在网络世界中常常被提及,但可能对于非专业人士来说还有些模糊的概念——127.0.0.1与本机IP地址。这两个地址在网络通信中都扮演着重要的角色,但它们之间又有着怎样的区别呢?让我们一起来探究一下。 一、…

简单Mesh多线程合并,使用什么库性能更高

1)简单Mesh多线程合并,使用什么库性能更高 2)Unity Semaphore.WaitForSignal耗时高 3)VS编辑的C#代码注释的中文部分乱码 4)变量IntPtr m_cachePtr切换线程后变空 这是第389篇UWA技术知识分享的推送,精选了…

【GO-OpenCV】go-cv快速配置

最近对golang实现目标检测心血来潮,尝试在没有sudo权限的平台配置go-cv,有所发现,索性多个平台都做尝试 安装Go语言(Golang) 通过包管理器安装(适用于Debian/Ubuntu)(有点慢) 更新包列表: sud…

AbMole带你探索颅内压力与肌肉生长的联系:一项突破性研究

在生物医学领域,颅内压力(ICP)的调控机制一直是研究的热点。最近,一项发表在《PLOS ONE》上的研究为我们揭示了颅内压力与后颅窝肌肉生长之间的潜在联系,为我们理解某些慢性头痛的成因提供了新的视角。 颅内压力的异常…

大数据的发展,带动电子商务产业链,促进了社会的进步【电商数据采集API接口推动电商项目的源动力】

最近几年计算机技术在诸多领域得到了有效的应用,同时在多方面深刻影响着我国经济水平的发展。除此之外,人民群众的日常生活水平也受大数据技术的影响。 在这其中电子商务领域也在大数据技术的支持下,得到了明显的进步。虽然电子商务领域的发…

酷开科技将AI与大数据融合,成为OTT大屏营销革新的驱动力

在数字化浪潮的推动下,营销领域正经历着深刻的变革。而在这样一个媒介渠道分散、注意力碎片化的时代,“大屏”是难得能让消费者们“精神集中”高度卷入的内容消费场景,也是能让品牌一对多地高效触达家庭人群的通道,大屏的独特营销…

TVBOX 最新版下载+视频源教程

下载链接 wx 搜索 Geek 前端 发送电视资源进行获取 操作教程

【数据结构与算法】对称矩阵,三角矩阵 详解

给出对称矩阵、三角矩阵的节省内存的存贮结构并写出相应的输入、输出算法。 对称矩阵和三角矩阵可以通过特殊的存储结构来节省内存。这种存储结构只存储矩阵的一部分元素,而不是全部元素。 对称矩阵:对于一个n阶对称矩阵,我们只需要存储主对…

VUE 项目用 Docker+Nginx进行打包部署

一、Docker Docker 是一个容器化平台,允许你将应用程序及其依赖项打包在容器中。使用 Docker,你可以创建一个包含 Vue.js 应用程序的容器镜像,并在任何支持 Docker 的环境中运行该镜像。 二、Nginx Nginx 是一个高性能的 HTTP 服务器和反向…

钡铼技术BL104在环境监测站多协议采集保障数据全面准确

随着工业化和城市化进程的加快,环境污染问题日益严重,环境监测站在保护生态环境、保障公众健康中的作用变得越来越重要。钡铼技术PLC物联网关BL104,为环境监测站提供了一种高效、可靠的多协议数据采集解决方案,保障了监测数据的全…