《JavaEE进阶》----3.<SpringBoot项目创建细节大全+打jar包运行>

本篇博客讲解了

创建Spring Boot项目的各种方法及创建细节、还有项目中目录和代码的简单介绍、启动项目、换端口号、Web服务器简介、HTTP状态码、以及用Maven打jar包运行。

什么是Spring

Spring让开发Java工程项目变得更快、更简单、更安全。

它专注于开发工程时的速度、简化和效率。是世界上最受欢迎的Java框架

Spring在面试中其实说的就是Spring家族。

它包含Spring(Spring Framework)、Spring Boot、Spring MVC、Spring Cloud。等等许多框架。 

一、创建第一个SpringBoot程序

1.1不安装插件创建项目:

登录网站:start.spring.io

创建方法同下。

只是创建的这个项目需要下载,之后再用idea打开即可。比较麻烦

如果是社区版。需要

1.2安装插件创建项目:

首先需要安装插件才行。

不要直接点Install。因为那个要钱。而是点进去下载免费版本。

点进去找到免费版直接下载就可以了。放在idea安装目录下面,(也可以不放在这个安装目录下面)不要解压 

从这里点击设置,点击从硬盘安装插件,再选择这个压缩包。点击ok就可以了。重启IDEA

安装之后,名称会发生变化。变成spring initializr and Assistant。再点击 file > new project 如果左边出现 spring initializr。则说明插件安装完成

此时左边就有‌Spring Initializr

Spring Initializr是一个Web应用程序,专门用于生成Spring Boot项目的初始结构。

1.3接着创建项目

社区版

选择JDK版本、Java版本 

选择Spring Boot版本 

选择依赖 

在创建项目的时候我们也可以选择依赖,由于我们要进行web开发,因此要引入

Spring Web这个依赖

引入 Spring Web 依赖的主要原因是它提供了一种快速构建Web应用程序的方式,同时降低了组件之间的耦合度,提高了系统的可维护性、可测试性和可扩展性。 

特别是spring-boot-starter-web,是Spring Boot中用于构建Web应用程序的启动器,它自动包括了Spring的核心Web功能,如Spring MVC,使用spring-boot-starter-web可以让开发者更加专注于编写业务逻辑,而无需在依赖管理的迷宫中迷失方向。这种依赖的引入简化了Web应用的开发过程,使得开发者能够更高效地构建和部署Web应用‌。

检查版本

1.在点击文件->设置->构建、执行、部署->找到java编译器

2.文件->项目结构->项目

查看版本是否对应。

 

 

下载包 

若想修改Spring Boot版本

 

如果哪个包有安全漏洞,我们避免使用。不影响我们学习,到了公司,公司解决,不需要我们管。

检验项目创建是否成功

全部弄好之后启动项目,如果启动成功,说明项目创建成功

1.4目录和代码介绍 

1.5项目启动 

1.6第一个程序(hello,SpringBoot)

 如上,运行出错了,最终我换了个端口号就好了。

原因是8080端口号已经被占用。可能是之前我下载过tomcat。springboot又内置tomcat这导致端口号8080冲突

1.7换端口号

1.8web服务器

tomcat就是一个web服务器。

对http进行了封装

网址剖析( 为什么是127.0.0.1...)

我们来剖析一下网址http://127.0.0.1:8080/user/index

http://表示http协议。

127.0.0.1是一个特殊的IP,表示本地。这个代表你要访问的是哪个机器。

:8080是端口号,表示的是对应的某个进程。一个端口号只能对应一个进程,一个进程可以对应多个端口号。而这里的8080对应的进程一般是tomcat。此时就把请求发送给tomcat。

user/index是代表的资源。tomcat就是一个web服务器,此时tomcat通过这个就找到了我们所要访问的资源。

也就是发起请求到服务器,告诉服务器你要使用什么协议、访问哪个机器、中的哪个进程、及进程中的哪些资源。找到之后服务器响应结果返回给浏览器。

1.9HTTP状态码(对应错误解决方法)

2xx:表示访问成功

3xx:表示重定向

4xx:客户端发生错误

5xx:服务器发生错误


404:通常表示请求的url不存在

若发生这个错误我们可以

1.检查url是否正确

2.检查代码是否正确,如注解是否写错漏写等等问题。

500:表示服务器端发生错误

就是代码错了。如参数错误。语法错误。我们看看后端日志,从下往上看,一段一段的看(段内从上往下)

也就是先看最后一段第一行。 

无法访问此网站:web服务器没有启动。确认一下端口号是否冲突。

二、打包并运行Jar包方式

2.1打包

安装了idea,可以直接通过点击运行按钮就可以运行我们的项目。

如果没有安装idea。我们也可以运行这个项目。

(springboot打jar包)

打一个jar包。这就需要我们通过maven来操作了。

2.2运行jar包 

通过

java -jar Jar包名字

命令来启动

端口号冲突

启动的日志和我们在idea启动的日志是一模一样的。

在linux启动需要我们打成jar包。通过java -jar这个命令。

如果打的jar包,通过java -jar启动不了,我们首先排除代码问题,要先在 idea可以启动

如果还不行,大多是环境的问题,是缓存的问题。

多clean几遍,再package。

如果还不行,那就重启一下idea。这是对外发布过程中可能遇到的问题。

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

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

相关文章

Kafka命令详解:从零开始,掌握Kafka集群管理、主题操作与监控的全方位技能,理解每一条命令背后的逻辑与最佳实践

本文主要是关于Kafka的命令详解,每个命令都进行了非常详细的注释,帮助大家能更好的理解这些命令背后的含义,从底层去理解,如果大家喜欢,请多多点赞关注,欢迎评论! 为大家推荐几篇比较好的Kafka文…

【第0002页 · 枚举】月月查华华的手机

【前言】本文以及之后的一些题解都会陆续整理到目录中,若想了解全部题解整理,请看这里: 第0002页 月月查华华的手机 不知道在看的各位有没有被家里人查过手机呢?如果有,想必今天你会感同身受一些。我们现在要来看一道…

什么是BI?BI系统的功能有哪些?哪些人需要BI工具支持?

什么是BI? BI是商业智能(Business Intelligence)的缩写。它是指通过收集、整理、分析和可视化企业内部和外部数据,从中获得洞察信息和决策支持的技术和流程。BI利用数据分析工具和技术,帮助企业管理者和决策者更好地理…

神经网络算法 - 一文搞懂One-Hot Encoding(独热编码)

本文将从独热编码的原理、独热编码的分类、独热编码的应用三个方面,带您一文搞懂独热编码 One-Hot Encoding 。 独热编码 特征数字化:将分类变量(或称为离散特征、无序特征)转换为一种适合机器学习算法处理的格式。 特征数字化 为…

Jenkins发邮件功能如何配置以实现自动化?

jenkins发邮件的设置指南?Jenkins怎么配置服务器? Jenkins作为一个流行的自动化服务器,其发邮件功能是通知团队成员构建状态的重要手段。AokSend将详细介绍如何配置Jenkins发邮件功能,以实现自动化通知。 Jenkins发邮件&#xf…

Nuxt 项目实战 - 15:自定义unocss规则,让编写样式更高效

与UI设计师约定颜色命名规则 配置color变量 color.scss $colors: ((#ffffff,#f8f8f8,#ebebeb,#dbdbdb,#cccccc,#999999,#666666,#333333,#000000),(#daf6ef, #b4ecde, #08c193, #228f73, #43d7b2),(#f62f3b, #edc9c9, #f0e2e2, #ffecea, #f78185),(#f2f5f8, #e3e8eb, #c3cace, …

AI 大模型时代,对前端工程师有哪些机遇和挑战?

随着人工智能的发展,AI大模型为人工智能领域带来了巨大的机遇和挑战。前端工程师作为软件开发的重要一环,也需要关注 AI 大模型的发展趋势,并探索如何将其应用于前端开发和优化中。 AI 大模型应用广泛,已经深入到各个行业&#x…

超声波清洗机哪个品牌比较耐用?家用超声波清洗机推荐

随着生活质量的提升,高品质眼镜日益受到青睐。遗憾的是,眼镜的恰当清洁与养护往往被忽视,导致镜片模糊、沾染污渍,直接影响视觉享受。为此,超声波眼镜清洗机应运而生,成为众多消费者的新选择,同…

Linux系统中没有安装 wget 命令

Linux系统中没有安装 wget 命令 1、Linux系统中没有安装 wget 命令2、安装 wget 1、Linux系统中没有安装 wget 命令 这个错误表明系统中没有安装 wget 命令。 2、安装 wget 如果 Linux 系统中没有安装 wget 命令,可以按照以下方法进行安装: 一、Cent…

Mysql基础练习题 181.找到收入比经理高的员工 (力扣)

181.找到收入比经理高的员工 建表插入数据: Create table If Not Exists Employee (id int, name varchar(255), salary int, managerId varchar(10)); Truncate table Employee insert into Employee (id, name, salary, managerId) values (1, Joe, 70000, 3); …

springboot农村留守儿童援助系统-计算机毕设 附源码 16875

springboot农村留守儿童援助系统 摘要 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了农村留守儿童援助系统的开发全过程。通过分析农村留守儿童援助系统管理的不足,创建了一个计算机管理农村留守儿童援…

伴奏提取怎么弄?这款神器让你的音乐创作无界限

记得在无数个夜晚,我沉浸在自己喜爱的歌曲中,每当旋律响起,就忍不住想要跟唱,但纯净的伴奏总是难觅踪迹。但自从我发现了伴奏提取怎么操作的秘密,一切变得简单起来! 无论是家庭聚会,还是朋友K歌…

阿里云OSS文件存储

文章目录 参考准备创建bucketendpoint 和 bucket域名的访问路径AccessKey和OSS的开发文档 Springboot整合OSS引入依赖AliyunOssConfigAliyunOssPropertiesapplicatioin.yml简单上传和下载使用签名URL进行临时授权访问生成以PUT方法访问的签名URL来上传文件通过签名URL临时授权简…

html快速入门

HTML语言不区分大小写HTML语言不区分单双引号 基本结构&#xff1a;HTML head title&#xff1a;浏览器标题 body 示例&#xff1a; <!DOCTYPE html> <head><meta charset"UTF-8"><title>Hello World</title> </head><bod…

Centos LVM磁盘合并方法

Centos LVM磁盘合并方法 使用fdisk -l命令查看机器增加了2块物理磁盘&#xff0c;一块40G另一块50G 需要将这两块盘的空间合并在一起&#xff0c;而且还需要动态扩展即在不关机的情况下操作 使用pvcreate将两块新增的物理磁盘加入物理卷 [rootlocalhost ~]# pvcreate /dev/sdb…

想避免踩雷选到好用的骨传导耳机?精选热门五款分享

目前在市面当中&#xff0c;骨传导耳机被称之为是黑科技耳机&#xff0c;骨传导耳机拥有很多优势&#xff0c;在听歌时不需要入耳&#xff0c;不会伤耳朵。随着骨传导耳机品牌的不断发展&#xff0c;人们在选购骨传导耳机时&#xff0c;也会觉得非常困难&#xff0c;可能一不小…

小红书产品分析报告

一、体验环境 产品版本&#xff1a;V5.26.2 测试设备:OPPO 系统版本&#xff1a;Android 6.0.1 体验时间&#xff1a;2018-10-31 二、产品介绍 产品名称&#xff1a;小红书 产品类型&#xff1a;社交电商 产品slogan:标记我的生活 产品定位&#xff1a;一款年轻人都分享的…

运维学习————LVS集群和Keepalived+LVS高可用

目录 官网&#xff1a;LVS中文官网 一、概念 二、组成及软件工作层次图 ​编辑 三、整体架构 四、名词解释 五、三种工作模式 1、LVS-NAT 2、LVS-TUN 3、LVS-DR 六、DR模式的实现 1、克隆出LVS&#xff0c;配置虚拟IP 2、配置Nginx的虚拟IP Nginx1的配置 Nginx2…

react中配置Sentry

sentry 打开sentrySentry Docs | Application Performance Monitoring &amp; Error Tracking Software官网&#xff0c; 注册。根据提示创建应用后 在 React 应用中配置 Sentry 可以按照以下步骤进行&#xff1a; 安装 Sentry SDK: 在项目根目录下运行&#xff1a; npm in…

Android settings命令讲解和实战

1&#xff0c;简介 在Android系统中&#xff0c;settings命令用于管理设备设置。这些命令可以与Settings提供者&#xff08;Settings provider&#xff09;交互&#xff0c;后者是一个用于存储和检索系统设置的系统服务。Settings provider在Android系统中可以被看作是一个特殊…