Spring Boot 一.基础和项目搭建(上)

之前也自学过SSM框架,Spring Boot框架,也动手写过几个项目,但是这是第一次完整的记录。从0开始,把一些细节整理了一下。
大概会分为十几小节,这是一个学习的过程,更是一个思考的过程,废话不多说那就正式开始了。😊

Spring Boot 第一节 基础与入门[上]

  • 一.思维导图
  • 二.基本概念
  • 三.项目搭建
    • 1.项目搭建环境
    • 2.maven仓库
      • (1)maven安装于配置
      • (2)idea中的maven配置
    • 3.创建Spring Boot项目
      • (1)项目搭建
      • (2)项目起步
  • 四.idea配置热加载

一.思维导图

这是我的个人亿图脑图笔记,整理了一下,也是本节的大概内容。
分为上下两篇,上主要是项目配置和搭建,下为一些插件,项目目录结构,父子工程,以及一些接口工具的使用。
在这里插入图片描述

二.基本概念

  1. 先看百度搜索指数对比:(简洁明了)
    在这里插入图片描述

  2. 和传统的SSM框架不一样,Springboot框架将很多配置都简化了,自动配置好了,这一点使得它成为当代主流,当然也有一些老项目依旧是SSM框架。

  3. 其中一个主要特点:约定大于配置(知道即可)
    在这里插入图片描述

  4. 特性:简略,可以自行百度。(不影响)

三.项目搭建

1.项目搭建环境

工具:idea
jdk17(以上)
Spring Boot3
Maven仓库配置
mysql8.0

注意:如果版本不一样,可以使用老版本搭配:
jdk1.8,Spring boot2也是可以的

2.maven仓库

(1)maven安装于配置

  1. 下载好maven仓库工具,maven官网下载地址
    在这里插入图片描述
  2. 下载完成后,配置环境变量,系统的高级配置。[寻找教程]
    cmd测试一下:mvn -version,看看显示是否成功。
  3. 目录如下:其中要修改conf目录下的setting.xml文件,添加阿里云的镜像(清华的也行),配置放在下面,需要修改为自己的路径。
  4. 创建文件夹:repo,存放地址(名字随便取,英文)
    在这里插入图片描述
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.2.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.2.0 https://maven.apache.org/xsd/settings-1.2.0.xsd">//注意,/Users/moqi/tools/maven_jar要改为自己路径<localRepository>/Users/moqi/tools/maven_jar</localRepository><mirrors><mirror><id>aliyunmaven</id><mirrorOf>*</mirrorOf><name>阿里云公共仓库</name><url>https://maven.aliyun.com/repository/public</url></mirror></mirrors>
</settings>

(2)idea中的maven配置

上面配置完了,进行idea中的maven配置,打开setting,如下所示,修改为自己下载的maven仓库地址,下面两个同样改为自己的配置文件和储存文件夹。
在这里插入图片描述

3.创建Spring Boot项目

(1)项目搭建

  1. 打开idea,创建一个新项目,填写如下所示,配置完点击next:[域名用自己的]
    Name:项目名
    Location:项目存放地址
    Group:用自己域名的反写,一般默认com.example,可以自己修改
    jdk和java要对应:这里都是版本号17
    Packaging:jar
    在这里插入图片描述
  2. 下一步后勾选如下:
    可以一口气都勾选上,以后都要用,但是这样的话,下面的配置文件要连接数据库,否则会报错。
    如果先不连接数据库的话,只需要Lombok和SpringBootDevTools就行了。(这也是可以的,后续依赖配置我会发一个总的文件,复制粘贴即可)
    在这里插入图片描述
  3. 点击创建完成后,如下所示,创建成功:
    其中我们可选的依赖,maven仓库已经帮我们执行导入了,我们可以在pom文件中查看一下。
    ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/a74c835c8d644fc195a0d76ad90acebf.png

(2)项目起步

  1. 其中这个类我们的运行主类,如果创建时没有,要手写一下,如下所示。
    在这里插入图片描述
  2. rescource目录下的配置文件为application.yml或者默认application.properties。推荐使用application.yml格式,可以删除原来的,创建application.yml文件[基本配置如下]。
    其中这种格式:需要注意缩进。[这种是已经导入数据库依赖的,要配置连接的,没有导入的可以先忽略]
# 服务端口
server:port: 9090
# 数据库配置,如果没有添加数据库依赖,可以先不加
spring:datasource:driver-class-name: com.mysql.cj.jdbc.Driverusername:         #你本地的数据库用户名password:         #你本地的数据库密码url: jdbc:mysql://localhost:3306/数据库名称?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false&serverTimezone=GMT%2b8&allowPublicKeyRetrieval=trueservlet:multipart:max-file-size: 100MBmax-request-size: 100MB
  1. 运行一下主类:一般默认的端口号为8080,配置文件中可以修改为9090。运行成功:
    在这里插入图片描述

四.idea配置热加载

热加载:就是容器状态在运行的情况下重新加载改变编译后的类.在这种情况下内存不会清空,sessin不会丢失,但容易造成内存溢出,或者找不到方法。因为内存无法转变成对像. 一般改变类的结构和模型就会有异常,在已经有的变量和方法中改变是不会出问题的。在中模式最好是在调试过程中使用,免得整个项目加载.

打开setting,配置如下所示:
在这里插入图片描述

这里Spring Boot第一节上篇,主要分为配置搭建,内容较少,主要在环境搭建与项目的初步建立上,从思维导图上来说,三分之一左右。[但很重要,配置不对,一切白费!!]
下半节:工具和插件使用,各种接口,请求协议。其中下面的各种接口工具的使用,可能会有些难度。[实际操作和联系]
敬请期待下篇的到来:…

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

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

相关文章

金融汽车科技LLM

汇丰银行 众安保险 1. AIGC重塑保险价值链 小额高频 2.构建智能应用的技术方案演进 增加微服务 长记忆&#xff1a;向量库短记忆&#xff1a;对话历史&#xff0c;思考路径&#xff0c;执行历史 中台架构设计 蔚来汽车在大模型的应用实践 公司介绍 应用架构 应用实践 4.大…

Django框架之DRF(武沛齐全)

一、FBV和CBV FBV&#xff0c;function base views&#xff0c;其实就是编写函数来处理业务请求。 from django.contrib import admin from django.urls import path from app01 import views urlpatterns [path(users/, views.users), ] from django.http import JsonResp…

快速排序---算法

1、算法概念 快速排序&#xff1a;通过一趟排序将待排记录分隔成独立的两部分&#xff0c;其中一部分记录的数据均比另一部分的数据小&#xff0c;则可分别对这两部分记录继续进行排序&#xff0c;以达到震哥哥序列有序。 快速排序的最坏运行情况是O()&#xff0c;比如说顺序数…

网络基础二补充——json与http协议

五、市面上常用序列化和反序列化工具 ​ 常用的有&#xff1a;json、protobuf、xml三种方案&#xff1b; 5.1json的使用 1.安装jsoncpp库&#xff0c;是一个第三方的开发库文件&#xff1b; sudo yum install -y jsoncpp-devel2.使用json ​ 经常使用的头文件是json.h&…

【uC/OS-III篇】uC/OS-III 创建第一个任务(For STM32)

uC/OS-III 创建第一个任务&#xff08;For STM32&#xff09; 日期&#xff1a;2024-3-30 23:55&#xff0c;结尾总结了今天学习的一些小收获 本博客对应的项目源码工程 源码项目工程 1. 首先定义错误码变量 // 用于使用uC/OS函数时返回错误码 OS_ERR err; 2. 定义任务控制…

Golang | Leetcode Golang题解之第2题两数相加

题目&#xff1a; 题解&#xff1a; func addTwoNumbers(l1, l2 *ListNode) (head *ListNode) {var tail *ListNodecarry : 0for l1 ! nil || l2 ! nil {n1, n2 : 0, 0if l1 ! nil {n1 l1.Vall1 l1.Next}if l2 ! nil {n2 l2.Vall2 l2.Next}sum : n1 n2 carrysum, carry …

Vue ElementPlus Input输入框

Input 输入框 通过鼠标或键盘输入字符 input 为受控组件&#xff0c;它总会显示 Vue 绑定值。 通常情况下&#xff0c;应当处理 input 事件&#xff0c;并更新组件的绑定值&#xff08;或使用v-model&#xff09;。否则&#xff0c;输入框内显示的值将不会改变。不支持 v-mode…

【面试经典150 | 动态规划】最小路径和

文章目录 写在前面Tag题目来源解题思路方法一&#xff1a;动态规划方法二&#xff1a;空间优化 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法&#xff0c;两到三天更新一篇文章&#xff0c;欢迎催更…… 专栏内容以分析题目为主&#xff0c;并附带一些对于本题…

MCGS学习——水位控制

要求 插入一个水罐&#xff0c;液位最大值为37插入一个滑动输入器&#xff0c;用来调节水罐水位&#xff0c;滑动输入器最大调节为液位最大值&#xff0c;并能清楚的显示出液位情况用仪表显示水位变化情况&#xff0c;仪表最大显示设置直观清楚方便读数&#xff0c;主划线为小…

设计模式-结构型-享元模式Flyweight

享元模式的特点&#xff1a; 享元模式可以共享相同的对象&#xff0c;避免创建过多的对象实例&#xff0c;从而节省内存资源 使用场景&#xff1a; 常用于需要创建大量相似的对象的情况 享元接口类 public interface Flyweight { void operate(String extrinsicState); } 享…

如何使用极狐GitLab 自定义 Pages 根域名

本文作者&#xff1a;徐晓伟 GitLab 是一个全球知名的一体化 DevOps 平台&#xff0c;很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab 是 GitLab 在中国的发行版&#xff0c;专门为中国程序员服务。可以一键式部署极狐GitLab。 本文主要讲述了极狐GitLab Pages …

普发Pfeiffer 真空TCP120-TCP380-TCP035-TCP600 使用手侧

普发Pfeiffer 真空TCP120-TCP380-TCP035-TCP600 使用手侧

C++进阶:多态(笔记)

目录 1. 多态相关概念1.1 简述&#xff1a;多态1.2 概念汇总与补充 2. 多态重写的底层原理2.1 虚函数存储的结构与位置2.2 重写覆盖 1. 多态相关概念 1.1 简述&#xff1a;多态 1. 什么是多态 不同的对象去做同一个行为时&#xff0c;得到的结果不同。反应到编程语言中&#…

Go语言HTTP服务实现GET和POST请求的同时支持

引言 在现代的Web开发中&#xff0c;HTTP服务是构建网络应用程序的基础。而支持GET和POST请求是其中最基本、最常见的功能之一。GET请求用于从服务器获取数据&#xff0c;而POST请求则用于向服务器提交数据。在Go语言中&#xff0c;通过标准库中的net/http包&#xff0c;我们可…

实景三维技术:开启自然资源管理的新篇章

随着科技的不断进步&#xff0c;实景三维技术已经在多个领域得到了广泛的应用。而在自然资源管理领域&#xff0c;实景三维技术更是发挥着越来越重要的作用。本文将介绍实景三维在自然资源管理领域的应用&#xff0c;探讨其带来的优势和变革。一、什么是实景三维技术&#xff1…

开源一款剪贴板跨设备共享工具

shigen坚持更新文章的博客写手&#xff0c;擅长Java、python、vue、shell等编程语言和各种应用程序、脚本的开发。记录成长&#xff0c;分享认知&#xff0c;留住感动。 个人IP&#xff1a;shigen 昨天遇到了一个很棘手的问题&#xff1a;我的手机剪贴板需要同步到另外的两台设…

HarmonyOS实战开发-一次开发,多端部署-音乐专辑

简介 基于自适应和响应式布局&#xff0c;实现一次开发、多端部署音乐专辑页面。 相关概念 一次开发&#xff0c;多端部署&#xff1a;一套代码工程&#xff0c;一次开发上架&#xff0c;多端按需部署。支撑开发者快速高效的开发支持多种终端设备形态的应用&#xff0c;实现对…

Chatgpt掘金之旅—有爱AI商业实战篇(二)

演示站点&#xff1a; https://ai.uaai.cn 对话模块 官方论坛&#xff1a; www.jingyuai.com 京娱AI 一、前言&#xff1a; 成为一名商业作者是一个蕴含着无限可能的职业选择。在当下数字化的时代&#xff0c;作家们有着众多的平台可以展示和推广自己的作品。无论您是对写书、文…

商业开源MES+源码+可拖拽式数据大屏

商业开源的一套超有价值的JAVA制造执行MES系统源码 带本地部署搭建教程 教你如何在本地运行运行起来。 开发环境&#xff1a;jdk11tomcatmysql8springbootmaven 需要源码&#xff0c;私信我付费获取。 一、系统概述&#xff1a; 万界星空科技免费试用MES、开源MES、商业开…

PP-YOLOE: An evolved version of YOLO

摘要 我们在之前 PP-YOLOv2 的基础上进行了优化&#xff0c;使用 无锚 范式&#xff0c;更强大的主干和颈部配备了 CSPRepResStage 。 ET-head 和动态标签分配算法 TAL 。 1 、介绍 受 YOLOX 的启发&#xff0c;我们进一步优化了之前的工作 PP-YOLOv2 。 PP-YOLOv2 是一款高…