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

news2024/12/24 0:48:15

本篇博客讲解了

创建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.检查代码是否正确,如注解是否写错漏写等等问题。

405:表示请求方式错误 

1.若指定了为get请求,就不能再用post请求了

2.Spring支持get、post请求都支持

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.coloradmin.cn/o/2083651.html

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

相关文章

Python在神经网络中优化激活函数选择使用详解

概要 在神经网络中,激活函数扮演着至关重要的角色。它的主要作用是引入非线性因素,使得神经网络能够处理复杂的非线性问题。如果没有激活函数,神经网络仅仅是线性模型的堆叠,无法胜任深度学习中的各种任务。本文将深入探讨几种常用的激活函数,包括Sigmoid、Tanh、ReLU及其…

【JVM】垃圾收集器与GC日志(二)

垃圾收集器与GC日志 ZGC收集器(Z Garbage Collector,全并发、超低延迟 10ms) ZGC是一款JDK11中新加入的具有实验性质的低延迟垃圾收集器,ZGC可以说源自于Azul System公司开发的C4(Concurrent Continuously Compacting Collector)收集器 参考文章:http…

5G 4G 空口信令APN携带差异

4G 终端在PDN connectivity request中access_pt_name中携带。 msg_type 208 (0xd0) (PDN connectivity request) lte_esm_msgpdn_connectivity_reqpdn_type 3 (0x3) (Ipv4v6)req_type 1 (0x1) (initial request)info_trans_flag_incl 0 (0x0)access_pt_name_incl 1 (0x1…

基于vue框架的财务室发票管理系统设计与实现946m1(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。

系统程序文件列表 项目功能:财务,发票数据 开题报告内容 基于Vue框架的财务室发票管理系统设计与实现开题报告 一、开题报告名称 基于Vue框架的财务室发票管理系统设计与实现 二、研究背景与意义 在现代企业财务管理中,发票管理是一项至关重要的工…

源代码安全管理:深信达SDC沙盒防泄密软件的创新与应用

在数字化时代,源代码作为软件开发的核心资产,其安全性直接关系到企业的竞争力和市场地位。源代码的泄露不仅可能导致知识产权的损失,还可能引发安全漏洞,给企业带来不可估量的损害。因此,源代码安全管理成为了企业信息…

杰发科技AC7801——Flash模拟EEP内存(2)_备份

1. 默认配置在1000个地址存储1000个数据 配置如下 计算地址 查看地址内容,等到打印完成 计算符合,从0-999共计1000 2. 修改配置在65536地址存储65536个数据 配置还是这个 因为传进去的地址是uint16_t,因此最大值是65536,写65536…

大数据-106 Spark Graph X 计算学习 案例:1图的基本计算、2连通图算法、3寻找相同的用户

点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…

代码随想录 刷题记录-19 动态规划(3)完全背包理论、习题

一、完全背包理论 52. 携带研究材料 有N种物品和一个最多能背重量为W的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品都有无限个(也就是可以放入背包多次),求解将哪些物品装入背包里物品价值总和最大。 完…

(二) 初入MySQL 【数据库管理】

一、SQL语言分类 DDL:数据定义语言,用于创建数据库对象,如库、表、索引等 DML:数据操纵语言,用于对表中的数据进行管理,用来插入、删除和修改数据库中的数据 DQL:数据查询语言,用于从数据表中查…

Mybatis:基础巩固-DML

目录 一、概述二、新增三、修改四、删除 一、概述 DML语句主要用来完成对数据的增删改的操作。可以分为以下几类: 新增(INSERT)修改(UPDATE)删除(DELETE) 二、新增 INSERT INTO tb_user(name, …

【MySQL 14】用户管理

文章目录 🌈 一、用户管理⭐ 1. 用户信息⭐ 2. 创建用户⭐ 3. 修改密码⭐ 4. 删除用户 🌈二、数据库的权限⭐ 1. 权限列表⭐ 2. 查看权限⭐ 3. 授予权限⭐ 4. 回收权限 🌈 一、用户管理 MySQL 也会区分普通用户和超级用户。如果只是访问某一…

centos基础设置

1.设置网络 # 配置网络 vi /etc/sysconfig/network-scripts/ifcfg-ens33 #将里面的onboard设置为yes 2.修改计算机名 使用命令行: 打开终端。 使用 hostnamectl 命令可以直接修改主机名。例如,如果您想将主机名更改为 mynewhostname,您可以使…

selenium(一)基于java、元素定位

Selenium自动化 Selenium是一个用于Web应用程序的自动化测试工具。它直接运行在浏览器中,可以模拟用户在浏览器上面的行为操作。 chrome下载 https://www.google.com/chrome/ 下载的结果是 “ChromeSetup.exe”,双击该文件,安装程序会自…

selenium(二)基于java、元素操控、Frame切换、元素等待

元素操控 选择到元素之后,我们的代码会返回元素对应的 WebElement对象,通过这个对象,我们就可以 操控 元素 输入sendKeys 项目实战:在网银环境下载流水[交易明细]的时候,需要指定查询日期,有些银行是可以…

一个简单的CRM客户信息管理系统,提供客户,线索,公海,联系人,跟进信息和数据统计功能(附源码)

前言 在当今快速发展的商业环境中,企业管理面临着种种挑战,尤其是如何有效管理和维护客户关系成为了一个关键问题。现有的一些处理方案往往存在功能分散、操作复杂、数据孤岛等痛点,这不仅影响了工作效率,也难以满足企业对客户关…

仿华为车机功能之--修改Launcher3,实现横向滑动桌面空白处切换壁纸

本功能基于Android13 Launcher3 需求:模仿华为问界车机,实现横向滑动桌面空白处,切换壁纸功能(本质只是切换背景,没有切换壁纸)。 实现效果: 实现思路: 第一步首先得增加手势识别 第二步切换底图,不切换壁纸是因为切换壁纸动作太大,需要调用到WallpaperManager,耗…

【赵渝强老师】构建Docker Swarm集群

在了解了Docker Swarm的体系架构以后,基于已经部署好三台虚拟主机便可以非常容易地构建Swarm集群。下表列出了这三台虚拟机的相关信息。其中:master主机将作为Swarm Manager运行;而node1和node2将作为Swarm Node运行。 视频讲解如下&#xf…

nacos 动态读取nacos配置中心项目配置

实现了项目稳定运行情况下不需要在项目中改配置&#xff0c;直接在nacos中修改更方便。 pom文件&#xff1a; <!--读取bootstrap文件--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-bootstrap…

大数据测试怎么做,数据应用测试、数据平台测试、数据仓库测试

本期内容由中通科技高级质量工程师龙渊在公益讲座中分享&#xff0c;他从大数据测试整体介绍、数据应用测试、数据平台测试以及数据仓库测试等方面&#xff0c;与大家共同探讨了大数据测试的方法实施与落地。 以下是讲座正文&#xff1a; 今天我们分享的内容主要从大数据简介…

阿里云Ubuntu系统安装/简单使用Kafka

一、安装kafka 1.下载安装包 1.1下载地址 https://kafka.apache.org/downloads 注意&#xff1a; 版本可以随意选择&#xff0c;我们选择版本为2.4.1 2.压缩文件上传/解压 2.1上传 2.2解压文件 #解压文件指令 tar -zxvf kafka_2.12-2.4.1.tgz -C /export/server/ #创建软…