news 2026/9/1 8:04:37

后端springboot框架入门学习--第一篇

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
后端springboot框架入门学习--第一篇

Spring Boot 是一个非常流行且强大的 Java 后端开发框架,它的核心目标是简化基于 Spring 框架应用的初始搭建开发过程,可以把它理解为 Spring 框架的一个“增强套件”或“快速启动包”。

核心组成部分:启动器、自动配置、外部化配置、Spring Boot Actuator、简化的编程模型。

启动器:一组预定义依赖描述符。只需要引入一个启动器,就可以帮助我们引入开发某个功能所需要的所有相关依赖。

自动配置:Spring Boot在启动的时候会扫描项目的Classpath,根据已有的jar包依赖,自动推断并配置应用程序所需要的组件。

外部化配置:通过application.properties或者application.yml文件轻松管理配置。(目前主要用yml,properties的写法比较繁琐,yml采用缩进的写法更方便阅读)

Spring Boot Actuator:提供了一系列HTTP端点或JMX来监控和管理运行中的应用。(常用的端点,健康状态:/actuator/health,应用信息:/actuator/info,运行指标:/actuator/metrics)。

简化的编程模型:主类加上@SpringBootApplication注解就能启动整个应用。

1.整合mybatis:

分为依赖和配置文件:

具体的两个依赖: //在pom文件中添加依赖,写入后maven刷新 <!--mysql驱动依赖--> <dependency> <groupId>com.mysql</groupId> <artifactId>mysql-connector-j</artifactId> </dependency> <!--mybatis的起步依赖--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>3.0.0</version> </dependency> 添加数据源: //在application.yml文件中写入datasource spring: datasource: driver-class-name:com.mysql.cj.jdbc.Driver url:jdbc:mysql://localhost:3306/mybatis username:root password:123456

2.三层数据关系

后端处理逻辑:浏览器发送请求,经过controller层,controller调用service方法,service调用mapper方法,mapper调用sql语句使用数据库。controller、service、mapper三层依次传递数据并处理后返回前端。以下展示目录结构,用示例代码简要说明三层作用和关联:

这里主要写三层的关键代码,为了理清三层的关系。(新建数据库,并创建一个表user)

//UserController.java 主要任务就是使用service层的bean对象,然后调用service方法传递参数 @RestController{ @Autowired private UserService userService; RequestMapping("/findById") public User findById(Integer id){ //通过id查询用户 return userService.findById(id); //返回用户信息 } } //UserService.java 主要任务就是使用mapper层的bean对象,然后调用mapper方法传递参数 public interface UserService { public User findById(Integer id); } //UserServiceImpl.java 继承service类,详写具体实现功能的代码内容 @Service public class UserServiceImpl implements UserService { @Autowired private UserMapper userMapper; @Override public User findById(Integer id){ //通过id查询用户 return userMapper.findById(id); //返回用户信息 } } //UserMapper.java 主要任务就是使用sql语句,与数据库进行交互,返回数据 @Mapper public interface UserMapper { @Select("select * from user where id = #{id}") public User findById(Integer id); }

运行启动类后,直接访问localhost:8080/findById?id=1,可以直接看到数据库查询的内容。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/1 7:18:50

SMDJ45A单向 TVS瞬态抑制二极管 :3000W浪涌保护管 防雷击抗静电

SMDJ45A单向 TVS瞬态抑制二极管 二极管产品已经跟我们的生活有着密不可分的联系了&#xff0c; TVS瞬态抑制二极管&#xff0c;是一种高效能保护二极管&#xff0c;产品体积小、功率大、响应快等诸多优点 TVS瞬态抑制二极管SMDJ45A&#xff0c;是一种二极管形式的高效能被动保…

作者头像 李华
网站建设 2026/8/31 4:20:33

Foundation 文本

Foundation 5 文本&#xff08;Typography&#xff09; Foundation 5 提供了丰富的排版&#xff08;Typography&#xff09;工具&#xff0c;包括标题、段落、内联文本元素、对齐方式等。默认样式基于 Sass 变量&#xff0c;可自定义&#xff0c;但开箱即用非常美观。 1. 基本…

作者头像 李华
网站建设 2026/8/31 6:59:21

Sui 主网升级至 V1.61.2

其他升级要点如下所示&#xff1a; 协议 #24343&#xff1a;对 coin.move 的框架进行了修改。 gRPC #24244&#xff1a;对于尚未完全写入的新检查点&#xff0c;不再返回 “Internal Error”&#xff0c;而是返回 “Not Found”。 GraphQL #24202&#xff1a;修复了一个与…

作者头像 李华
网站建设 2026/8/31 11:08:26

25、Kubernetes 应用部署与管理实践

Kubernetes 应用部署与管理实践 1. 简单应用请求分析与清理 在开始复杂的应用部署之前,我们先来看一个简单的请求示例。请求的 URI 为 http://192.168.99.100:8080/ ,服务器使用的是 nginx: 1.10.0 - lua: 10001 版本。请求头信息如下: | 请求头 | 值 | | ---- | --…

作者头像 李华
网站建设 2026/8/31 4:48:45

31、容器化应用设计理念与实践

容器化应用设计理念与实践 1. 配置管理 在应用开发和部署过程中,配置管理至关重要。建议将配置信息存储在环境变量中,而非代码库的文件里。这样做有诸多好处: - 便于将相同的代码库部署到不同环境,如预发布环境和生产环境,无需在代码中维护复杂配置,也无需为每个环境重…

作者头像 李华
网站建设 2026/8/31 12:51:13

如何评估LobeChat的加载速度与响应延迟?性能基准测试

如何评估LobeChat的加载速度与响应延迟&#xff1f;性能基准测试 在今天这个“快即是王道”的AI时代&#xff0c;用户早已习惯了秒级甚至毫秒级的交互反馈。当我们在网页上向一个聊天机器人提问时&#xff0c;哪怕只是多等了半秒钟才看到第一个字蹦出来&#xff0c;那种微妙的“…

作者头像 李华