Das Befolgen der offiziellen Codeabhängigkeiten reicht hier nicht aus. Die Maven-POM-Datei muss hier ergänzt werden.
<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.2.0</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency>
Hier verwenden wir weiterhin MySQL als Testdatenbank, die viele Arten von Datenbanken unterstützen kann.
Fügen Sie die MySQL-Datenbankkonfiguration zur Datei application.properties hinzu. Die Verwendung des Druid-Verbindungspools wird in späteren Kapiteln erläutert. Sie können auch application.yml verwenden, dies ist optional.
spring.datasource.username=root spring.datasource.password=123456 spring.datasource.url=jdbc:mysql://192.168.0.108:3306/test?useSSL=false&useUnicode=true&characterEncoding=utf-8 spring.datasource.driver-class-name=com.mysql.jdbc.Driver
Fügen Sie den Testcode zum Testpaket hinzu, hauptsächlich um einen einfachen Dateneinfügungstest durchzuführen.
Der Code lautet wie folgt:
package com.hy.fmp.test; import com.hy.fmp.Application; import com.hy.fmp.fluent.entity.TestFluentMybatisEntity; import com.hy.fmp.fluent.mapper.TestFluentMybatisMapper; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import java.util.Date; @SpringBootTest(classes = Application.class) public class InsertTest { @Autowired TestFluentMybatisMapper testFluentMybatisMapper; @Test public void testInsertDefaultValue() { // 插入数据 testFluentMybatisMapper.insert( new TestFluentMybatisEntity() .setAge(18) .setName("法外狂徒张三") .setCreateTime(new Date()) .setDelFlag(0)); } }
Anweisungen:
1 Beachten Sie, dass TestFluentMybatisMapper die Mapper-Klasse im Zielpaket ist.
2. Die Tabellenentität TestFluentMybatisEntity kann im Kettencode geschrieben werden.
@Accessors( chain = true )
Der gescannte Mapper ist auch das Mapper-Verzeichnis im Zielpaket
@SpringBootApplication @MapperScan({"com.hy.fmp.fluent.mapper"}) public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
Lassen Sie uns den eingefügten Code testen
Ich habe eine hier gemeldete Ausnahme gefunden. Passen Sie den Code an und fügen Sie eine Konfigurationsklasse hinzu.
Der Code lautet wie folgt und fügt die MapperFactory-Injektion hinzu.
package com.hy.fmp.config; import cn.org.atool.fluent.mybatis.spring.MapperFactory; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration public class ApplicationConfig { // @Bean("dataSource") // public DruidDataSource newDataSource() { // return DataSourceCreator.create("datasource"); // } // // @Bean // public SqlSessionFactoryBean sqlSessionFactoryBean() throws Exception { // SqlSessionFactoryBean bean = new SqlSessionFactoryBean(); // bean.setDataSource(newDataSource()); // ResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(); // // 以下部分根据自己的实际情况配置 // // 如果有mybatis原生文件, 请在这里加载 // bean.setMapperLocations(resolver.getResources("classpath*:mapper/*.xml")); // /* bean.setMapperLocations( // /* new ClassPathResource("mapper/xml1.xml"), // /* new ClassPathResource("mapper/xml2.xml") // /* ); // */ // org.apache.ibatis.session.Configuration configuration = // new org.apache.ibatis.session.Configuration(); // configuration.setLazyLoadingEnabled(true); // configuration.setMapUnderscoreToCamelCase(true); // bean.setConfiguration(configuration); // return bean; // } // 定义fluent mybatis的MapperFactory @Bean public MapperFactory mapperFactory() { return new MapperFactory(); } }
Führen Sie es erneut aus, um den Effekt zu sehen.
Die Ausführung ist erfolgreich, sehen Sie sich die Daten in der Tabelle an. Okay, perfekt.
Das obige ist der detaillierte Inhalt vonSo verwenden Sie Java Fluent Mybatis, um Vorgänge in der Datenbank zu überprüfen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!