SpringBoot整合SQLite詳細(xì)過程
一、SQLite是什么
SQLite是一個不需要服務(wù)、不需要配置、不需要外部依賴的開源SQL輕量級數(shù)據(jù)庫。
- 不需要服務(wù)器:如MySQL安裝后,會在操作系統(tǒng)中創(chuàng)建一個進(jìn)程mysqld.exe,而SQLite不需要創(chuàng)建。
- 不需要配置:如MySQL安裝后,需要配置端口、用戶名、密碼等,而SQLite不需要,它是存儲在磁盤上的文件,不需要安裝。
- 不需要外部依賴:SQLite是自給自足的,不需要任何外部的依賴。
二、SQLite優(yōu)點(diǎn)
sqlite支持MySQL擁有的大多數(shù)功能。
允許多個進(jìn)程\線程安全訪問,支持事務(wù)機(jī)制。
允許多門開發(fā)語言調(diào)用,支持JDBC。
支持Windows、Linux等多個操作系統(tǒng)上運(yùn)行。
三、SpringBoot整合SQLite
準(zhǔn)備工作
1.創(chuàng)建一個文件(后綴名為.db)
【建議】將這個文件夾放到項目所在的目錄。
這個文件的相當(dāng)于MySQL中創(chuàng)建一個庫。
以下是我創(chuàng)建的文件,

2.使用IDEA連接



顯示這個就是連接成功了。
3.創(chuàng)建表


整合
1.導(dǎo)入依賴
<!-- 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 # 邏輯已刪除值(默認(rèn)為 1)
logic-not-delete-value: 0 # 邏輯未刪除值(默認(rèn)為 0)解釋

3.代碼
我剛才創(chuàng)建的表有三個字段,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> {
}實現(xiàn)類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();
}
}展示結(jié)果

以上我們就整合完了,寫了一個小小的demo。希望能夠幫助到你。
到此這篇關(guān)于SpringBoot整合SQLite(詳細(xì)講解)的文章就介紹到這了,更多相關(guān)SpringBoot整合SQLite內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
深入分析Android系統(tǒng)中SparseArray的源碼
這篇文章主要介紹了深入分析Android系統(tǒng)中SparseArray的源碼,SparseArray為Java實現(xiàn),需要的朋友可以參考下2015-07-07
MybatisPlus?自定義插件實現(xiàn)攔截SQL修改功能(實例詳解)
這篇文章主要介紹了MybatisPlus?自定義插件實現(xiàn)攔截SQL修改功能,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧2023-11-11
java線程之Happens before規(guī)則案例詳解
這篇文章主要為大家介紹了java線程之Happens-before規(guī)則,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪<BR>2022-08-08
IntelliJ IDEA 2021.1 EAP 4 發(fā)布:字體粗細(xì)可調(diào)整Git commit template 支持
這篇文章主要介紹了IntelliJ IDEA 2021.1 EAP 4 發(fā)布:字體粗細(xì)可調(diào)整,Git commit template 支持,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-02-02
SpringBoot如何實現(xiàn)各種參數(shù)校驗
文章詳細(xì)介紹了SpringValidation的使用,包括簡單使用、requestBody參數(shù)校驗、requestParam/PathVariable參數(shù)校驗、統(tǒng)一異常處理、分組校驗、嵌套校驗、集合校驗、自定義校驗、編程式校驗、快速失敗、@Valid和@Validated的區(qū)別以及實現(xiàn)原理2024-12-12
SpringBoot自定義Redis實現(xiàn)緩存序列化詳解
Spring提供了一個RedisTemplate來進(jìn)行對Redis的操作,但是RedisTemplate默認(rèn)配置的是使用Java本機(jī)序列化。如果要對對象操作,就不是那么的方便。所以本文為大家介紹了另一種SpringBoot結(jié)合Redis實現(xiàn)序列化的方法,需要的可以參考一下2022-07-07

