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

相关推荐
狂炫冰美式8 分钟前
人均配了AI, 为什么公司还是没变快? 🤔 本质还是分布式系统问题
前端·后端·架构
她的男孩2 小时前
Spring Boot 接 Flowable 工作流:用 3 个注解搭一个请假审批流程
java·后端·架构
爱读源码的大都督2 小时前
Claude Code源码分析(三):为什么系统提示词中需要有tools呢?
前端·人工智能·后端
爱勇宝2 小时前
Claude Code 被曝暗藏“隐形检测”代码:封代理不是最可怕的,可怕的是你根本不知道它在干什么
前端·后端·程序员
ITOM运维行者3 小时前
从零搭建企业级服务器监控体系:踩坑实录与架构设计
前端·后端
用户4099322502123 小时前
Vue状态管理入门第四章:组合式store和SSR风险
前端·vue.js·后端
用户34232323763173 小时前
SPI 通信与高速外设驱动详解
后端
魏祖潇3 小时前
SDD 完整指南——Spec 端打底、Story 端交付、留白区
人工智能·后端
feelmylife594 小时前
消息队列可靠投递与幂等消费 -- 从"消息丢了"到"消息别重复"的完整工程实践
后端
雪隐4 小时前
个人电脑玩AI-10让5060 Ti给你打工——部署 Odysseus:终于有个能打的"AI管家"了
人工智能·后端