一、问题描述
用spring boot整合了mybatis+sqlite3,对数据库进行查询、插入、删除都成功,但数据库内容却没有改变。
二、原因
问题出在数据库路径使用了相对路径
spring:datasource:driver-class-name: org.sqlite.JDBCurl: jdbc:sqlite::resource:db/school.db
项目编译后,数据库文件和配置文件到了target下,使用相对路径只修改了target下的数据库文件。
如下图所示:
三、解决方法
开发使用绝对路径,上线使用相对路径。
spring:profiles:active: dev---# development environmentspring:profiles: devdatasource:driver-class-name: org.sqlite.JDBCurl: jdbc:sqlite:src/main/resource/db/school.db---# production environmentspring:profiles: proddatasource:driver-class-name: org.sqlite.JDBCurl: jdbc:sqlite::resource:db/school.db