一、问题描述
sqlite 操作数据库,保存成功,但数据库没有数据,在代码中有查询出了数据,关闭项目,等段时间,启动项目,代码查询数据,数据又不见了。。
最近一直在搞JAVAFX,开发了个工具,用spring boot整合了mybatis-plus+sqlite3,保存数据一直有问题,mybatis-plus保存成功,但数据库一直没有没有内容,但是在mybatis-plus中又查询出来数据了。
二、解决方法
后面从以下几个方面来排除,解决了这个问题:
1.mybatis-plus 是否有问题,
2.数据库是否用错了
3.配置文件是否错了
第一步怀疑是mybatis-plus的问题,但是如果是mybatis-plus的问题,应该数据也查询不出来,但是又查询出来了人,然后用JDBC的方式,操作了下,发现还是不行,所有应该不是ORM的问题。
第二步怀疑是否是连错了数据库,反复检查也没有发现问题。
第三步怀疑配置文件是否又错,反复检查没啥问题啊,不然保存,查询就不会出现数据了,又怀疑是事物的问题,开启了@EnableTransactionManagement注解,搞来搞去,还是没有找到问题所在。。。
觉得问题肯定是出在数据库这边,最后在配置文件总,找到了问题所在。。
# DataSource Config
spring:
datasource:
url: jdbc:sqlite::resource:db/xxxxx.db
driver-class-name: org.sqlite.JDBC
username:
password:
配置文件是这样的,数据库文件放在resources下
将路径改成绝对路径,测试下,然后发现可行。。。。。
jdbc:sqlite:D:/xxxx/xxxx/xxxx/src/main/resources/db/huasheng.db
最后将数据库文件放到项目下的db目录下去了就行了,配置文件改成如下就行了:
# DataSource Config
spring:
datasource:
url: jdbc:sqlite:db/huasheng.db
driver-class-name: org.sqlite.JDBC
username:
password: