Rumah  >  Artikel  >  Java  >  Cara menggunakan Java Fluent Mybatis untuk mengesahkan operasi pada pangkalan data

Cara menggunakan Java Fluent Mybatis untuk mengesahkan operasi pada pangkalan data

PHPz
PHPzke hadapan
2023-04-22 18:43:171379semak imbas

Tambahan kebergantungan

Mengikut kebergantungan kod rasmi tidak mencukupi Fail maven pom perlu ditambah di sini.

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

Konfigurasi fail pangkalan data

Di sini kami masih menggunakan mysql sebagai pangkalan data ujian FM (singkatan untuk fasih mybatis) boleh menyokong pelbagai jenis pangkalan data masa kini.

Tambah konfigurasi pangkalan data mysql dalam fail application.properties Penggunaan kumpulan sambungan druid akan dibincangkan dalam bab kemudian. Anda juga boleh menggunakan application.yml, ini adalah pilihan.

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

Kod ujian

Tambahkan kod ujian ke dalam pakej ujian, terutamanya untuk melakukan ujian pemasukan data yang mudah.

Kodnya adalah seperti berikut:

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

Penjelasan:

1 Ambil perhatian bahawa TestFluentMybatisMapper ialah kelas pemeta dalam pakej sasaran.

2. Entiti jadual TestFluentMybatisEntity boleh ditulis dalam kod rantai.

@Accessors(
    chain = true
)

Tambah anotasi pemeta pengimbasan

Pemeta yang diimbas juga merupakan direktori pemeta dalam pakej sasaran

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

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

Laksanakan kod ujian

Mari uji kod yang dimasukkan

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

Saya menemui pengecualian yang dilaporkan di sini, melaraskan kod dan menambah kelas konfigurasi.

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

Kodnya adalah seperti berikut, menambah suntikan 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();
  }
}

Laksanakan sekali lagi untuk melihat kesannya.

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

Pelaksanaan berjaya, lihat data dalam jadual. OK, sempurna.

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

Atas ialah kandungan terperinci Cara menggunakan Java Fluent Mybatis untuk mengesahkan operasi pada pangkalan data. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam