<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.2</version> </dependency> <!-- https://mvnrepository.com/artifact/org.xerial/sqlite-jdbc --> <dependency> <groupId>org.xerial</groupId> <artifactId>sqlite-jdbc</artifactId> <version>3.30.1</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> </dependencies>
import org.apache.ibatis.session.SqlSessionFactory; import org.mybatis.spring.SqlSessionFactoryBean; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.jdbc.DataSourceProperties; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.sqlite.SQLiteDataSource; import javax.sql.DataSource; /** * @author liwen * @Title: MyBatisConfig * @Description: this is * @date 2020/4/27 / 10:52 */ @Configuration public class MyBatisConfig { @Autowired private DataSourceProperties dataSourceProperties; @Bean(name="dataSource") public DataSource dataSource() { SQLiteDataSource dataSource = new SQLiteDataSource(); dataSource.setUrl(dataSourceProperties.getUrl()); return dataSource; } public SqlSessionFactory sqlSessionFactory() throws Exception { SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean(); sqlSessionFactoryBean.setDataSource(dataSource()); return sqlSessionFactoryBean.getObject(); } }
import org.mybatis.spring.boot.autoconfigure.ConfigurationCustomizer; import org.mybatis.spring.mapper.MapperScannerConfigurer; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; /** * @author liwen * @Title: MyBatisMapperScannerConfig * @Description: 通用連接配置類 * @date 2020/4/27 / 10:52 */ @Configuration public class MyBatisMapperScannerConfig { @Bean public MapperScannerConfigurer mapperScannerConfigurer() { MapperScannerConfigurer mapperScannerConfigurer = new MapperScannerConfigurer(); mapperScannerConfigurer.setSqlSessionFactoryBeanName("sqlSessionFactory"); //com.example.demo.dal.mapper 這個包名是全部的Mapper.java文件所在的路徑,該包下面的子包裏面的文件一樣會掃描到。 //此包名與具體的應用的名稱相關 mapperScannerConfigurer.setBasePackage("com.sqliteboot.Mapper"); return mapperScannerConfigurer; } /** * 目的防止駝峯命名規則 * * @return */ @Bean public ConfigurationCustomizer configurationCustomizer() { return new ConfigurationCustomizer() { @Override public void customize(org.apache.ibatis.session.Configuration configuration) { configuration.setMapUnderscoreToCamelCase(true); } }; } }
import com.sqliteboot.pojo.ResultResponse; import com.sqliteboot.pojo.UserToken; import org.apache.ibatis.annotations.Select; import org.springframework.web.bind.annotation.RequestBody; import java.util.List; /** * @author liwen * @Title: resPespMapper * @Description: this is * @date 2020/4/27 / 10:57 */ public interface ResPespMapper { /***根據 ID 查詢*/ @Select("SELECT * FROM result_response") List<ResultResponse> selectAll(); /** * 查詢所有數據 * * @return */ @Select("SELECT * FROM user_token") List<UserToken> selectAllUser(); }
public class ResultResponse { private Integer id; private String vendorId; private String shopeeSku; private String productId; private String upcCode; private String productCode; private String saleSelect; private String desMark; private String creationTime;
`br/>@Autowired
ResPespMapper resPespMapper;java
@Test void contextLoads() { List<ResultResponse> resultResponses = resPespMapper.selectAll(); for (ResultResponse resultRespons : resultResponses) { System.out.println(resultRespons); } }
`web
spring.datasource.driver-class-name=org.sqlite.JDBC spring.datasource.url=jdbc:sqlite::resource:static/db/lwtextdata spring.datasource.username=root spring.datasource.password=root