springboot整合jpa sqlite
前言
最近有关项目需要用到SQLITE,我先是使用Mybatis去连接SQLITE,然后发现SQLITE对BLOB支持不好,在网上看到相关教程可以写mapper.xml文件,加一个handler解决BLOB支持的问题,但是又发现Mybatis还对SQLITE的自增主键不支持,不能正常自增主键,而且Mybatis读取几十MB的BLOB文件很慢,最后换到JPA,JPA不仅支持自增主键,而且读大文件blob性能也比SQLITE好。
一、pom依赖导入
<dependency>
<groupId>org.xerial</groupId>
<artifactId>sqlite-jdbc</artifactId>
<version>3.43.0.0</version>
</dependency>
<dependency>
<groupId>com.github.gwenn</groupId>
<artifactId>sqlite-dialect</artifactId>
<version>0.1.2</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
二、application.properties
spring.datasource.driver-class-name=org.sqlite.JDBC
#spring.datasource.url=jdbc:sqlite:E:/db/test.db
spring.datasource.url=jdbc:sqlite::resource:db/test.db
spring.jpa.show-sql=false
三、Repository
@Repository
public interface BrightnessRRepository extends JpaRepository<BrightnessR, Integer> {
}
四、使用(省略Service层)
brightnessRRepository.save(brightnessR);