【SpringBoot】 什么是springboot(一)?如何搭建springboot项目?

news2025/1/17 0:55:17

文章目录

  • SpringBoot
    • 第一章
      • 1、什么是springboot
        • 1、回顾ssm项目搭建流程
        • 2、springboot项目的优点
      • 2、搭建springboot项目
        • 方式1:
        • 方式2:
    • 第二章
      • 1、基本配置
        • 1、热部署
        • 2、注解
        • 3、端口配置
          • application.properties特点
          • application.yml特点
          • 注意
        • 4、环境配置
          • springboot中的配置文件
          • 要求
        • 5、spring中事务要求
      • 2、整合mybatis
        • 1-2
        • 3
        • 4
        • 5-6
        • 7-8
        • 9-10
        • 11-12
        • 解除警告

SpringBoot

springboot:PDF查看

第一章

1、理解springboot的基本概念
2、配置springboot应用
3、掌握springboot应用的两种创建方式

1、什么是springboot

使用springboot的目的: 简化spring项目的初始搭建,以及简化开发过程
1、回顾ssm项目搭建流程
1、创建maven工程
2、导入依赖
3、创建核心配置文件 applicationContext.xml
4、在web.xml编写对应的配置
5、编写业务代码
6、配置tomcat服务器
7、将项目发布到tomcat服务器中运行
2、springboot项目的优点
1、springboot项目必须基于maven进行配置
2、springboot项目简化了xml文件在项目中的作用,甚至于可以做到零配置
3、springboot项目内置了tomcat服务器,通过一个启动类就可以直接启动服务器,运行项目
4、springboot它提供了一个起步依赖的概念,当需要使用什么技术时,只需要导入它的启步依赖,它的相
关依赖会自动导入,不需我们配置

2、搭建springboot项目

构建springboot项目的方式:

	方式1:创建一个maven工程,然后改造成springboot项目
		特点:
			1、步骤略多
			2、但这种方式不会产生冗余代码,可读性更好
			3、即使没有外网也能创建工程

	方式2:使用spring的脚手架,快速创建springboot项目
		特点:
			1、创建项目比较简单
			2、它会生成一个冗余代码 
			3、它必须有外网才可以使用


	@@@@@@@@如果是单独使用springboot用脚手架更简单
			但实现项目中,一般都会采用Maven工程改造
方式1:
创建一个maven工程,然后改造成springboot项目
1、创建maven工程

2、在pom.xml文件导入父级依赖
    <parent>
        <artifactId>spring-boot-starter-parent</artifactId>
        <groupId>org.springframework.boot</groupId>
        <version>2.3.12.RELEASE</version>
    </parent>

导入父级依赖作用:
	a、这里面包含了一组起步依赖,只有导入该父级依赖后,这一组起步依赖才能加载
	b、导入该父级依赖后,再导入springboot的其他依赖时,不用指定依赖的版本,系统会自动选择最合适的版本
	注意:如果maven的本地仓库中没有当前springboot版本的依赖,系统要联网下载
3、导入web应用的起步依赖
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
4、编写启动类
	注意:启动类自动包含组件扫描的功能,它可以扫描当前包或者是子包中加了注解标识的组件
	com.qs.controller
	com.qs.service
	com.qs.entity
	com.qs.dao
	启动类放在所有组件的上一层 com.qs

	@SpringBootApplication//标识当前是一个springboot应用
	public class AppStarter {

	    public static void main(String[] args) {

		SpringApplication.run(AppStarter.class,args);
	    }
	}

5、创建控制器类Controller

	@Controller//标识当前是一个控制器类
	public class FirstController {
	    @RequestMapping("/first")
	    @ResponseBody
	    public String first(){
	       return "hello world...";
	    }
	}

6、启动项目


  修改脚手架下载地址:  https://start.aliyun.com/  
方式2:

1

2

3

1、只需要编写控制器类即可

第二章

-----------------------
1、springboot的基本配置
2、springboot操作mybatis
3、springboot操作mybatisplus
4、使用mybatisplus代码生成器

1、基本配置

1、热部署

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

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

相关文章

深度学习——前馈全连接神经网络

前馈全连接神经网络 1.导入需要的工具包2.数据导入与数据观察&#xff08;1&#xff09;读取csv的文件信息&#xff1a;&#xff08;2&#xff09;训练数据前5行&#xff08;3&#xff09;打印第一个图&#xff08;4&#xff09;观察数据中的信息&#xff08;5&#xff09;查看…

JAVA版本的ATM编程问题记录

前段时间用C语言写了个银行ATM系统&#xff0c;还写了一篇文章记录了一些&#xff0c;C语言的ATM文章。后来又用IDEA写了一个JAVA版本的银行ATM。有人就会问为啥浪费这个时间写ATM呢&#xff1f;&#x1f9d0;其实是我本科代码没学好&#xff0c;所以现在想利用比较熟悉的ATM系…

第 8 章 电机测速(自学二刷笔记)

重要参考&#xff1a; 课程链接:https://www.bilibili.com/video/BV1Ci4y1L7ZZ 讲义链接:Introduction Autolabor-ROS机器人入门课程《ROS理论与实践》零基础教程 8.3.3 电机测速01_理论 测速实现是调速实现的前提&#xff0c;本节主要介绍AB相增量式编码器测速原理。 1.概…

faad2交叉编译——aac解码为pcm,解决faad单通道转双通道问题

FAAD是比较成熟高效的开源AAC解码库&#xff0c;这里用于解码AAC生成PCM数据&#xff0c;用于音频播放。这里因为faad库&#xff0c;会将单通道转化为双通道踩了些坑&#xff0c;所以记录一下。 我使用的是2.11.0版本&#xff0c;貌似往前的版本没有使用CMake&#xff0c;需要c…

如何在电脑中使用微信?pc版微信和手机版有什么区别

微信简介 微信是一个社交和商业强国&#xff0c;自成立以来一直在持续增长。该应用程序在2023年拥有13亿月活跃用户&#xff0c;尽管在某些国家对其使用存在一些阻力。 使用微信网页版可以获得的好处 尽管微信为iOS和Android智能手机提供了出色的应用程序&#xff0c;但仍有时…

面向初学者:什么是图数据库

当数据成为关键生产要素&#xff0c;许多企业开始面临利用海量数据辅助企业复杂决策的现实难题。而在数据爆发式增长&#xff0c;关联复杂度激增的趋势下&#xff0c;图数据库成为企业加工关联数据、挖掘隐藏价值、智能决策升级的关键技术之一&#xff0c;在全球范围内开始被使…

sql优化思路

sql的优化经验 这里解释一下SQL语句的优化的原理 1.指明字段名称&#xff0c;可以尽量使用覆盖索引&#xff0c;避免回表查询&#xff0c;因此可以提高效率 2.字面意思&#xff0c;无需过多赘述。索引就是为了提高查询效率的。 3.图中两条sql直接可以使用union all 或者 uni…

一文盘点 Partisia Blockchain 生态 4 月市场进展

Partisia Blockchain 是一个以高迸发、隐私、高度可互操作性、可拓展为特性的 Layer1 网络。通过将 MPC 技术方案引入到区块链系统中&#xff0c;以零知识证明&#xff08;ZK&#xff09;技术和多方计算&#xff08;MPC&#xff09;为基础&#xff0c;共同保障在不影响网络完整…

万字长文详解Typora+PicGo+Github/Gitee的配置教程

文章目录 1.前言1.1 Typora简介1.2 引入1.2.1 移动本地图片位置导致图片加载失败问题解决方案反思&#xff1a; 1.2.2 CSDN导入图片转存失败1.2.3 思考 1.3 图床工具1.4 使用原因1.5 总结 2.安装教程2.1 Typora安装教程2.1.1 下载安装包方式1&#xff1a;百度网盘方式2&#xf…

【Python爬虫】使用request和xpath爬取高清美女图片

&#x1f4dd;个人主页&#xff1a;哈__ 期待您的关注 目录 &#x1f388; urlib.request &#x1f525;具体的方法 ✈ lxml &#x1f525;xpath的基本语法 1. 基本路径 2. 选择节点 3. 谓语&#xff08;Predicates&#xff09; 4. 通配符 5. 选择多个路径 6. 函数 …

鸿蒙内核源码分析(工作模式篇) | CPU的七种工作模式

本篇说清楚CPU的工作模式 工作模式(Working mode) 也叫操作模式&#xff08;Operating mode&#xff09;又叫处理器模式&#xff08;Processor mode&#xff09;&#xff0c;是 CPU 运行的重要参数&#xff0c;决定着处理器的工作方式&#xff0c;比如如何裁决特权级别和报告异…

文献速递:深度学习医学影像心脏疾病检测与诊断--基于深度学习的低剂量SPECT心肌灌注图像去噪:定量评估与临床表现

Title 题目 Deep learning–based denoising of low‑dose SPECT myocardialperfusion images: quantitative assessment and clinical performance 基于深度学习的低剂量SPECT心肌灌注图像去噪&#xff1a;定量评估与临床表现 01 文献速递介绍 单光子发射计算机断层扫描&a…

Options API:选项式 API改成Composition API:组合式 API的留言板

让我欢喜让我忧 改成Composition API:组合式 API的代码&#xff0c; <template><!-- start --><span class"span_checkbox">操作<input type"checkbox" v-model"showInput" value"操作" /></span><…

Learning Continuous Image Representation with Local Implicit Image Function

CVPR2021https://github.com/yinboc/liif 问题引入 图像普遍都是使用像素来表示的&#xff0c;而现实世界是连续的&#xff0c;所以本文借鉴3D中neural implicit representation的思想&#xff0c;以连续的方式表示图像&#xff1b;模型输入坐标值和坐标附近的特征&#xff0…

区块链 | NFT 水印:Review on Watermarking Techniques(二)

&#x1f34d;原文&#xff1a;Review on Watermarking Techniques Aiming Authentication of Digital Image Artistic Works Minted as NFTs into Blockchains 1 半脆弱和可逆水印 鲁棒性好的水印技术通常会产生非常低透明度。正如前面所述&#xff0c;由于透明度在处理数字…

OpenGL 入门(四)—— 贴纸与美颜滤镜

本篇我们来介绍贴纸效果与美颜滤镜的实现。 1、贴纸效果 贴纸实际上是一个图片&#xff0c;用 Bitmap 加载图片后用 OpenGL 渲染到指定的位置上。我们举例添加一个耳朵贴纸&#xff1a; 1.1 获取人脸位置 上一篇我们在讲大眼滤镜时&#xff0c;在 Native 层除了获取到人脸 5…

【数据库表的约束(下)】

文章目录 一、自增长主键二、唯一键约束三、外键约束总结 一、自增长主键 这个约束的功能是&#xff1a; 你不用管我&#xff0c;也不需要插入我这一列的数据&#xff0c;我会保证自己与其他数据不冲突&#xff0c;并且是连续的。 创建一个表&#xff0c;表格内容如下&#x…

Tkinter组件:Checkbutton

Tkinter组件&#xff1a;Checkbutton Checkbutton&#xff08;多选按钮&#xff09;组件用于实现确定是否选择的按钮。Checkbutton 组件可以包含文本或图像&#xff0c;你可以将一个 Python 的函数或方法与之相关联&#xff0c;当按钮被按下时&#xff0c;对应的函数或方法将被…

保护公司机密:避免员工带着数据说拜拜

公司的核心资产之一就是数据。无论是客户信息、研发代码、内部决议、财务报告、商业合同、设计图纸等都是公司的重要资产。如果这些数据在员工离职时被带走&#xff0c;或在员工在职期间不当行为导致数据泄露&#xff0c;将给公司带来重大损失。 然而&#xff0c;保护这些数据…

大模型微调之 在亚马逊AWS上实战LlaMA案例(四)

大模型微调之 在亚马逊AWS上实战LlaMA案例&#xff08;四&#xff09; 在 Amazon SageMaker JumpStart 上微调 Llama 2 以生成文本 Meta 能够使用Amazon SageMaker JumpStart微调 Llama 2 模型。 Llama 2 系列大型语言模型 (LLM) 是预先训练和微调的生成文本模型的集合&#x…