SpringBoot整合SQLite详细过程

 更新时间:2025年06月18日 11:14:16   作者:Z灏  
SQLite是一个不需要服务、不需要配置、不需要外部依赖的开源SQL轻量级数据库,本文给大家介绍SpringBoot整合SQLite详细过程,感兴趣的朋友一起看看吧

一、SQLite是什么

SQLite是一个不需要服务不需要配置不需要外部依赖的开源SQL轻量级数据库。

  • 不需要服务器:如MySQL安装后,会在操作系统中创建一个进程mysqld.exe,而SQLite不需要创建。
  • 不需要配置:如MySQL安装后,需要配置端口、用户名、密码等,而SQLite不需要,它是存储在磁盘上的文件,不需要安装。
  • 不需要外部依赖:SQLite是自给自足的,不需要任何外部的依赖。

二、SQLite优点

sqlite支持MySQL拥有的大多数功能。

允许多个进程\线程安全访问,支持事务机制。

允许多门开发语言调用,支持JDBC。

支持Windows、Linux等多个操作系统上运行。

三、SpringBoot整合SQLite

准备工作

1.创建一个文件(后缀名为.db)

建议】将这个文件夹放到项目所在的目录。

这个文件的相当于MySQL中创建一个库。

以下是我创建的文件,

2.使用IDEA连接

显示这个就是连接成功了。

3.创建表

整合

1.导入依赖

        <!-- SQLite JDBC Driver -->
        <dependency>
            <groupId>org.xerial</groupId>
            <artifactId>sqlite-jdbc</artifactId>
            <version>3.34.0</version> <!-- Use the latest version -->
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
        <!-- mysql JDBC Driver -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.31</version>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.2.9</version>
        </dependency>

2.配置文件

spring:
  datasource:
    druid:
      login-timeout: 30000
    dynamic:
      primary: sqlite
      datasource:
        mysql:
          driver-class-name: com.mysql.cj.jdbc.Driver
          url: jdbc:mysql://localhost:3306/xxx?serverTimezone=UTC
          username: 
          password: 
        sqlite:
          url: jdbc:sqlite:D:\xxx\user.db
          driver-class-name: org.sqlite.JDBC
mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
    cache-enabled: true
    map-underscore-to-camel-case: false
  global-config:
    db-config:
      logic-delete-field: isDeleted  # 全局逻辑删除的实体字段名(since 3.3.0,配置后可以忽略不配置步骤2)
      logic-delete-value: 1 # 逻辑已删除值(默认为 1)
      logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)

解释

3.代码

我刚才创建的表有三个字段,id、name、age

实体类

@TableName(value ="user")
@Data
public class User implements Serializable {
    /**
     * 
     */
    private Integer id;
    /**
     * 
     */
    private String name;
    /**
     * 
     */
    private Integer age;
    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}

mapper层

@Mapper
public interface UserMapper extends BaseMapper<User> {
}

Service层

public interface UserService extends IService<User> {
}

实现类impl

@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User>
    implements UserService {
}

控制层

@RestController
@RequestMapping("/user")
public class UserController {
    @Resource
    private UserService userService;
    @GetMapping("/getAll")
    public List<User> getAll() {
        return userService.list();
    }
}

展示结果

以上我们就整合完了,写了一个小小的demo。希望能够帮助到你。

到此这篇关于SpringBoot整合SQLite(详细讲解)的文章就介绍到这了,更多相关SpringBoot整合SQLite内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • java多线程编程学习(线程间通信)

    java多线程编程学习(线程间通信)

    下面小编就为大家带来一篇java多线程编程学习(线程间通信)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • 解决SpringBoot整合ElasticSearch遇到的连接问题

    解决SpringBoot整合ElasticSearch遇到的连接问题

    这篇文章主要介绍了解决SpringBoot整合ElasticSearch遇到的连接问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • Java中的输出格式化问题小结

    Java中的输出格式化问题小结

    在Java中,System.out.printf方法用于格式化输出,格式化字符串`%.6f`表示浮点数保留6位小数,其他格式化选项包括`%d`(整数)、`%s`(字符串)和`%e`(科学计数法),示例代码展示了如何使用这些格式化选项,感兴趣的朋友一起看看吧
    2025-02-02
  • 解读JVM堆大小如何设置

    解读JVM堆大小如何设置

    文章系统讲解了JVM堆参数设置、分代比例调整、堆大小计算方法、监控工具使用及调优策略,强调结合GC日志分析与压力测试优化,避免堆过小/过大、元空间未限制等常见问题,提供高并发、批处理等场景的配置建议
    2025-09-09
  • SpringBoot启动原理深入解析

    SpringBoot启动原理深入解析

    我们开发任何一个Spring Boot项目都会用到启动类,下面这篇文章主要给大家介绍了关于SpringBoot启动原理解析的相关资料,文中通过图文以及实例代码介绍的非常详细,需要的朋友可以参考下
    2023-04-04
  • 详解Java Proxy动态代理机制

    详解Java Proxy动态代理机制

    今天给大家带来的是关于Java的相关知识,文章围绕着Java动态代理机制展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下
    2021-06-06
  • Java技术长久占居主要地位的12个原因

    Java技术长久占居主要地位的12个原因

    这篇文章主要为大家详细介绍了12个Java长久占居主要地位的原因,感兴趣的小伙伴们可以参考一下
    2016-07-07
  • Windows下安装Maven的详细教程(含镜像与本地仓库配置)

    Windows下安装Maven的详细教程(含镜像与本地仓库配置)

    Maven 是 Java 生态系统中不可或缺的项目管理和构建自动化工具,本文详细介绍了在Windows系统上安装和配置Maven的完整流程,希望对大家有所帮助
    2026-04-04
  • SpringBoot可视化接口开发工具magic-api的简单使用教程

    SpringBoot可视化接口开发工具magic-api的简单使用教程

    作为Java后端开发,平时开发API接口的时候经常需要定义Controller、Service、Dao、Mapper、XML、VO等Java对象。有没有什么办法可以让我们不写这些代码,直接操作数据库生成API接口呢?今天给大家推荐一款工具magic-api,来帮我们实现这个小目标!
    2021-06-06
  • java循环删除List元素报错的原因分析与解决

    java循环删除List元素报错的原因分析与解决

    大家在工作中应该都会遇到从List集合中删除某一个或多个元素的业务场景,相信大家都会避开在循环里面删除元素,使用其他方式处理,这是为什么呢,下面小编就来和大家详细聊聊
    2023-11-11

最新评论