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中Iterator迭代器的简单理解

    Java中Iterator迭代器的简单理解

    这篇文章主要介绍了Java中Iterator迭代器的简单理解,Iterator接口也是Java集合中的一员,但它与Collection、Map接口有所不同,Iterator主要用于迭代访问Collection中的元素,因此Iterator对象也被称为迭代器,需要的朋友可以参考下
    2024-01-01
  • 深入分析Android系统中SparseArray的源码

    深入分析Android系统中SparseArray的源码

    这篇文章主要介绍了深入分析Android系统中SparseArray的源码,SparseArray为Java实现,需要的朋友可以参考下
    2015-07-07
  • Java使用Tess4J实现图像识别方式

    Java使用Tess4J实现图像识别方式

    这篇文章主要介绍了Java使用Tess4J实现图像识别方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • MybatisPlus 自定义插件实现拦截SQL修改功能(实例详解)

    MybatisPlus 自定义插件实现拦截SQL修改功能(实例详解)

    这篇文章主要介绍了MybatisPlus 自定义插件实现拦截SQL修改功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2023-11-11
  • java线程之Happens before规则案例详解

    java线程之Happens before规则案例详解

    这篇文章主要为大家介绍了java线程之Happens-before规则,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪<BR>
    2022-08-08
  • IntelliJ IDEA 2021.1 EAP 4 发布:字体粗细可调整Git commit template 支持

    IntelliJ IDEA 2021.1 EAP 4 发布:字体粗细可调整Git commit template 支持

    这篇文章主要介绍了IntelliJ IDEA 2021.1 EAP 4 发布:字体粗细可调整,Git commit template 支持,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02
  • SpringBoot如何实现各种参数校验

    SpringBoot如何实现各种参数校验

    文章详细介绍了SpringValidation的使用,包括简单使用、requestBody参数校验、requestParam/PathVariable参数校验、统一异常处理、分组校验、嵌套校验、集合校验、自定义校验、编程式校验、快速失败、@Valid和@Validated的区别以及实现原理
    2024-12-12
  • Java I/O流之打印流详细使用方法教程

    Java I/O流之打印流详细使用方法教程

    java的io是实现输入和输出的基础,可以方便的实现数据的输入和输出操作,下面这篇文章主要给大家介绍了关于Java IO流打印流详细使用的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-01-01
  • SpringBoot自定义Redis实现缓存序列化详解

    SpringBoot自定义Redis实现缓存序列化详解

    Spring提供了一个RedisTemplate来进行对Redis的操作,但是RedisTemplate默认配置的是使用Java本机序列化。如果要对对象操作,就不是那么的方便。所以本文为大家介绍了另一种SpringBoot结合Redis实现序列化的方法,需要的可以参考一下
    2022-07-07
  • 深入浅出讲解Java比较器及数学常用类

    深入浅出讲解Java比较器及数学常用类

    这篇文章主要介绍了深入浅出讲解Java比较器及数学常用类,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09

最新评论