MyBatis SQLite使用时,SQLite BUSY出现时的解决

SQLite是一个单文件的数据库,在并发访问时,在默认的配置时,很容易出现SQLite BUSY的错误,后来在一个资料上看到,是因为SQLite使用的大文件锁,并且在并发访问时,如果一个访问发现数据文件被锁定了,就会直接返回SQLite BUSY.

在使用jdbc访问的时候,可以直接使用SQLiteConfig来设置。但在使用MyBatis访问SQLite时,需要在MyBatis-config.xml文件中设置这些属性。网上没有资料,所以我debug看了MyBatis的配置过程,发现在MyBatis初始化时,会读取datasource中的propertis中的name的[driver.]的属性,传递给dirve的connection(String url,Properits properties)方法中的properties中。配置文件大致如下:

                
                
                
上面的属性请参考SQLiteConfig

你可能感兴趣的:(数据结构)