发布时间

Spring Boot 数据访问基础

作者
  • 头像
    姓名
    龙祥
    X

大多数后端项目都离不开数据库。Spring Boot 里做数据访问,通常先配置数据源,再通过 MyBatis、JPA 或 JdbcTemplate 这类工具执行查询和更新。

数据源配置

常见配置如下:

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/demo?useSSL=false&serverTimezone=Asia/Shanghai
    username: root
    password: root
    driver-class-name: com.mysql.cj.jdbc.Driver

这里最重要的是数据库地址、用户名、密码和驱动。线上项目不要把真实密码直接提交到公开仓库。

Mapper 或 Repository

如果使用 MyBatis,常见写法是创建 mapper 接口:

@Mapper
public interface UserMapper {
  User findById(Long id);
}

然后在 XML 或注解里写 SQL。使用 JPA 时则通常会写 repository 接口,由框架帮我们生成一些基础查询能力。

Service 层处理业务

数据库操作不要直接散落在 controller 里。更常见的做法是 controller 调 service,service 再调 mapper 或 repository。

@Service
public class UserService {
  private final UserMapper userMapper;

  public UserService(UserMapper userMapper) {
    this.userMapper = userMapper;
  }

  public User getUser(Long id) {
    return userMapper.findById(id);
  }
}

我的理解

数据访问入门时,不需要先纠结哪种框架最好。先理解三件事:项目怎么连上数据库、SQL 在哪里执行、查询结果怎么返回给接口。把这条链路跑通,再慢慢补事务、分页、异常处理和性能优化。