> Java > java지도 시간 > springboot와 mybatis를 통합하는 방법

springboot와 mybatis를 통합하는 방법

WBOY
풀어 주다: 2023-05-16 15:52:06
앞으로
785명이 탐색했습니다.

MyBatis 통합

새 Spring Boot 프로젝트 생성 또는 Chapter1을 기반으로 운영

pom에 종속성 소개 단위 테스트를 수행하여 데이터 액세스 확인

  • 연결에 필요한 종속성 mysql-connector-java 소개 mysql

  • MyBatis mybatis-spring-boot-starter

  • 여기서는 spring-boot-starter를 도입하지 않았습니다. jdbc 종속성은 mybatis-spring-boot-starter에 이미 이 종속성이 포함되어 있기 때문입니다

  • <parent>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-parent</artifactId>
     <version>1.3.2.RELEASE</version>
     <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <dependencies>
     <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter</artifactId>
     </dependency>
     <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-test</artifactId>
     <scope>test</scope>
     </dependency>
     <dependency>
     <groupId>org.mybatis.spring.boot</groupId>
     <artifactId>mybatis-spring-boot-starter</artifactId>
     <version>1.1.1</version>
     </dependency>
     <dependency>
     <groupId>mysql</groupId>
     <artifactId>mysql-connector-java</artifactId>
     <version>5.1.21</version>
     </dependency>
    </dependencies>
    로그인 후 복사

    앞서 소개한 데이터베이스에 jdbc와 spring-data를 사용하여 접속하는 것과 동일하게, application.properties에서 mysql 연결 설정을 구성합니다.
  • spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root

spring.datasource.password=123456

spring.datasource.driver-class-name=com.mysql.jdbc .Driver



다른 Spring Boot 프로젝트와 마찬가지로 간단하고 간결하게 기본 구성을 완성한다. 이를 바탕으로 MyBatis를 사용하여 쉽고 편리하게 데이터베이스에 접근하는 방법을 살펴보겠습니다.

MyBatis

를 사용하여 Mysql에서 id(BIGINT), 이름(INT), age(VARCHAR) 필드를 포함하는 User 테이블을 생성하세요. 동시에 매핑 객체 User

public class User {
  private Long id;
  private String name;
  private Integer age;
  // 省略getter和setter
}
로그인 후 복사
사용자 매핑 작업 UserMapper를 생성합니다. 후속 유닛 테스트 검증을 위해 삽입 및 쿼리 작업을 구현합니다.


@Mapper
public interface UserMapper {
  @Select("SELECT * FROM USER WHERE NAME = #{name}")
  User findByName(@Param("name") String name);
  @Insert("INSERT INTO USER(NAME, AGE) VALUES(#{name}, #{age})")
  int insert(@Param("name") String name, @Param("age") Integer age);
}
로그인 후 복사
Spring Boot 메인 클래스 생성


@SpringBootApplication
public class Application {
 public static void main(String[] args) {
 SpringApplication.run(Application.class, args);
 }
}
로그인 후 복사
유닛 생성 test


테스트 로직: 이름=AAA, 나이=20인 레코드를 삽입한 다음 이름=AAA를 기준으로 쿼리하고 나이가 20인지 확인합니다.

테스트가 완료되고 데이터가 롤백되어 데이터 환경이 안정적인지 확인합니다. 각 테스트 단위 실행은 독립적입니다

@RunWith(SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(classes = Application.class)
public class ApplicationTests {
 @Autowired
 private UserMapper userMapper;
 @Test
 @Rollback
 public void findByName() throws Exception {
 userMapper.insert("AAA", 20);
 User u = userMapper.findByName("AAA");
 Assert.assertEquals(20, u.getAge().intValue());
 }
}
로그인 후 복사

위 내용은 springboot와 mybatis를 통합하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿