当前位置: 代码网 > it编程>编程语言>Java > SpringBoot整合SQLite的超详细讲解

SpringBoot整合SQLite的超详细讲解

2024年05月19日 Java 我要评论
一、sqlite是什么sqlite是一个不需要服务、不需要配置、不需要外部依赖的开源sql轻量级数据库。不需要服务器:如mysql安装后,会在操作系统中创建一个进程mysqld.exe,而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内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com