SpringBoot学习(上) , SpringBoot项目的创建(IDEA2024版本)

目录

[1. SpringBoot介绍](#1. SpringBoot介绍)

SpringBoot特点

[2. SpringBoot入门](#2. SpringBoot入门)

[2.1 创建SpringBoot项目](#2.1 创建SpringBoot项目)

[Spring Initialize](#Spring Initialize)

[第一步: 选择创建项目](#第一步: 选择创建项目)

[第二步: 选择起步依赖](#第二步: 选择起步依赖)

[第三步: 查看启动类](#第三步: 查看启动类)

[2.2 springboot父项目](#2.2 springboot父项目)

[2.3 测试案例](#2.3 测试案例)

[2.3.1 数据库](#2.3.1 数据库)

[2.3.2 生成代码](#2.3.2 生成代码)


1. SpringBoot介绍

Spring Boot是为了简化Spring应用的创建、运行、调试、部署等而出现的,使用它可以做到专注于Spring应用的开发,而无需过多关注XML的配置。

spring boot 致力于简洁,让开发者写更少的配置,程序能够更快的运行和启动。它是下一代javaweb框架,并且它是spring cloud(微服务)的基础。

SpringBoot特点

  1. 在spring的开发中更快入门
  2. 无需配置xml配置, 也可以根据需求自行配置
  3. 提供了一些大型项目中常见的非功能性特性,如嵌入式服务器、安全、指标,健康检测、外部配置等
  4. SpringBoot比spring更加方便
  5. 内置了三种服务器, 默认的服务器是Tomcat

2. SpringBoot入门

2.1 创建SpringBoot项目

Spring Initialize

这是通过IDEA里的Spring Initialize进行创建SpringBoot项目

第一步: 选择创建项目
第二步: 选择起步依赖

Spring Web

选择自己的数据库依赖, 然后创建

第三步: 查看启动类

这样就创建好一个springboot项目了.

2.2 springboot父项目

我们在创建工程的时候发现, 不需要我们自己手动导入依赖了, 只需要勾选依赖即可, 这是因为springboot对相关依赖进行了版本管理, 通过**parent来管理依赖,**全称是:

我的springboot是3.x.x版本, 适用于jdk17-21 如果使用jdk1.8的 springboot版本是2.x.x

start启动项可以帮助我们自动配置, 使得我们可以直接在main方法里运行, 不需要配置Tomcat

除了不需要配置Mybatis和Spring, 其他的和Spring与Mybatis整合没什么区别

然后我们可以进行一个小小的案例.

2.3 测试案例

2.3.1 数据库

sql 复制代码
DROP TABLE IF EXISTS `tb_user`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `tb_user` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '用户编号',
  `name` varchar(50) COLLATE utf8mb4_bin NOT NULL COMMENT '用户名称',
  `gender` char(2) COLLATE utf8mb4_bin NOT NULL DEFAULT '男' COMMENT '用户性别',
  `age` int(10) unsigned DEFAULT NULL COMMENT '用户年龄',
  `address` varchar(20) COLLATE utf8mb4_bin NOT NULL COMMENT '用户籍贯',
  `email` varchar(50) COLLATE utf8mb4_bin NOT NULL COMMENT '用户邮箱',
  `qq` varchar(20) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '用户QQ',
  `photo` varchar(200) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '用户头像',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `tb_user`
--

LOCK TABLES `tb_user` WRITE;
/*!40000 ALTER TABLE `tb_user` DISABLE KEYS */;
INSERT INTO `tb_user` VALUES (14,'dasdas','男',21,'陕西','lisi@qq.com','123131231','1662031776166EBE0C14F25AA4BC18F4072D949018D98.png'),(15,'一个人挺好','男',21,'陕西','270599153@qq.com','21312312',NULL),(18,'123','1',12,'123123123','213123213','123123',NULL);
/*!40000 ALTER TABLE `tb_user` ENABLE KEYS */;
UNLOCK TABLES;

2.3.2 生成代码

不知道怎么生成代码的小伙伴可以看这个:

MybatisPlus插件,代码自动生成, IDEA2024版本_idea如何导入mybatis-plus依赖-CSDN博客

切记!!!! ,main方法, 也就是我的Demo2Application类与其他的包是同级的

因为项目启动后, 程序第一时间先查找**@SpringBootApplication**注解, 然后从这个类的同级往下进行注解扫描

这就已经是项目的雏形了, mapper包是Dao层, 先到这里

相关推荐
952364 小时前
MyBatis
后端·spring·mybatis
Slow菜鸟6 小时前
AI学习篇(五) | awesome-design-md 使用说明
人工智能·学习
狐狐生风6 小时前
LangChain 向量存储:Chroma、FAISS
人工智能·python·学习·langchain·faiss·agentai
狐狐生风7 小时前
LangChain RAG 基础
人工智能·python·学习·langchain·rag·agentai
uzong7 小时前
9 种 RAG 架构,每位 AI 开发者必学:完整实战指南
后端
HackTorjan7 小时前
深度神经网络的反向传播与梯度优化原理
人工智能·spring boot·神经网络·机器学习·dnn
小江的记录本7 小时前
【Kafka核心】架构模型:Producer、Broker、Consumer、Consumer Group、Topic、Partition、Replica
java·数据库·分布式·后端·搜索引擎·架构·kafka
止语Lab7 小时前
从手动到框架:Go DI 演进的三个拐点
开发语言·后端·golang
努力努力再努力FFF9 小时前
医生对AI辅助诊断感兴趣,作为临床人员该怎么了解和学习?
人工智能·学习
Daybreak10 小时前
Elasticsearch 里的索引和 Mapping,到底是什么关系?
后端