Maison  >  Article  >  Java  >  Comment utiliser Java Fluent Mybatis pour vérifier les opérations sur la base de données

Comment utiliser Java Fluent Mybatis pour vérifier les opérations sur la base de données

PHPz
PHPzavant
2023-04-22 18:43:171377parcourir

Supplément de dépendances

Suivre les dépendances officielles du code ne suffit pas. Le fichier pom maven doit être complété ici.

<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>

Configuration des fichiers de base de données

Ici, nous utilisons toujours mysql comme base de données de test. FM (abréviation de fluent mybatis) peut prendre en charge de nombreux types de bases de données. Nous n'envisagerons pas d'autres bases de données pour le moment.

Ajoutez la configuration de la base de données mysql dans le fichier application.properties L'utilisation du pool de connexions Druid sera abordée dans les chapitres suivants. Vous pouvez également utiliser application.yml, ceci est facultatif.

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

Code de test

Ajoutez le code de test au package de test, principalement pour effectuer un simple test d'insertion de données.

Le code est le suivant :

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));
  }
}

Instructions :

1 Notez que TestFluentMybatisMapper est la classe mappeur dans le package cible.

2. L'entité table TestFluentMybatisEntity peut être écrite en code chaîne.

@Accessors(
    chain = true
)

Ajouter une annotation du mappeur numérisé

Le mappeur numérisé est également le répertoire du mappeur dans le package cible

@SpringBootApplication
@MapperScan({"com.hy.fmp.fluent.mapper"})
public class Application {
 
  public static void main(String[] args) {
    SpringApplication.run(Application.class, args);
  }
}

Java Fluent Mybatis如何验证代码操作数据库情况

Exécuter le code de test

Testons le code inséré

Java Fluent Mybatis如何验证代码操作数据库情况

J'ai trouvé une exception signalée ici, ajustez le code, ajoutez une classe de configuration.

Java Fluent Mybatis如何验证代码操作数据库情况

Le code est le suivant, en ajoutant l'injection MapperFactory.

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();
  }
}

Exécutez-le à nouveau pour voir l'effet.

Java Fluent Mybatis如何验证代码操作数据库情况

L'exécution est réussie, regardez les données dans le tableau. D'accord, parfait.

Java Fluent Mybatis如何验证代码操作数据库情况

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer