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层, 先到这里

相关推荐
MemoleCard5 小时前
深度解析Java当中的锁机制
后端
wear工程师6 小时前
ThreadLocal 在线程池里为什么会串数据:别只会答内存泄漏
java·后端
憧憬成为java架构高手的小白6 小时前
黑马八股--中间件学习之MQ(RabbitMQ)
学习·中间件
whyfail6 小时前
前端学 Spring Boot(2):一次点击,如何穿过整个后端?
前端·spring boot·后端
乔伊酱6 小时前
我被列表查询折磨了 7 年,直到有一天我发现它不是 ORM 的事!
spring boot·graphql
撩得Android一次心动7 小时前
Linux编程笔记4【个人用】
linux·笔记·学习
user-猴子8 小时前
让网页“活”过来 —— 用AI打造会自主学习的动态知识图谱
人工智能·学习·知识图谱
程序员cxuan8 小时前
Loop 还没玩明白,Graph Engineering 又火了。
人工智能·后端·程序员
网络工程小王8 小时前
【HCIE-AI】10.pytorch模型迁移分析
人工智能·学习·华为·llama
uzong9 小时前
把一面面试总结做成一个 Skill:重复的事,就别每次都重写
后端·面试