springboot 통합 my batisplus 방법
13158 단어 springbootmybatisplus
Mybatis-Plus(MP)은 Mybatis 의 증강 도구 로 Mybatis 를 바탕 으로 증강 만 하고 변 하지 않 으 며 개발 을 간소화 하고 효율 을 높이 기 위해 생 긴 다.(mybatis-plus 홈 페이지 에서 발췌)Mybatis 는 우리 에 게 큰 편 의 를 제공 해 주 었 지만 부족 한 점 이 있 습 니 다.MP 의 존 재 는 Mybatis 의 부족 함 을 조금 보완 하기 위해 서 입 니 다.Mybatis 를 사용 할 때 업무 논 리 를 쓸 때마다 DAO 층 에 방법 을 쓰 고 SQL 에 대응 해 야 한 다 는 것 을 알 수 있 습 니 다.간단 한 조건 조회 라 도 하나의 조건 만 바 뀌 어도 DAO 층 에 방법 을 추가 해 야 합 니 다.이 문제 에 대해 MP 라 는 프레임 워 크 는 Mybatis 와 Hibernate 의 장점 을 모 은 프레임 워 크 입 니 다.이 는 Hibernate 의 단일 표 CURD 작업 의 편 의 를 제공 하 는 동시에 Mybatis 의 특성 도 유지 합 니 다.
이 장 에 서 는 MybatisPlus 를 어떻게 사용 하 는 지 만 가르쳐 주 고,밑바닥 이 어떻게 이 루어 졌 는 지 깊이 알 고 싶다 면 홈 페이지 에서 소스 코드 를 다운로드 해 해석 할 수 있다.
프로젝트 생 성
여 기 는 한 걸음 도 오지 않 습 니 다.저 는 만 든 프로젝트 구 조 를 직접 드 리 겠 습 니 다.이 장의 마지막 에 소스 주 소 를 드 리 겠 습 니 다.효 과 를 볼 때 다운로드 할 수 있 습 니 다.
2.의존 도입
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.chaoqi</groupId>
<artifactId>springboot_mybatisplus</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>springboot_mybatisplus</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.0.RELEASE</version>
<relativePath/>
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<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>1.3.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!-- jsp -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<!-- SpringBoot - MyBatis -->
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.2</version>
</dependency>
<!-- MyBatis Mapper -->
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper-spring-boot-starter</artifactId>
<version>1.1.4</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<configuration>
<configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
<verbose>true</verbose>
<overwrite>true</overwrite>
</configuration>
<executions>
<execution>
<id>Generate MyBatis Artifacts</id>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper</artifactId>
<version>3.5.0</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</project>
3.application.yml 편집
server:
port: 8080
spring:
mvc:
view:
prefix: /WEB-INF/jsp/
suffix: .jsp
datasource:
url: jdbc:mysql://localhost:3306/test?characterEncoding=UTF-8&useUnicode=true&useSSL=false
username: root
password: 123456
driver-class-name: com.mysql.jdbc.Driver
mybatis:
mapper-locations: classpath:mapper/*.xml
type-aliases-package: com.chaoqi.springboot_mybatisplus.domain
4.역방향 생 성 pojo,mappergenerator Config.xml 만 들 기
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
<properties resource="application.yml"/>
<classPathEntry location="D:/mysql/mysql-connector-java-5.1.46/mysql-connector-java-5.1.46.jar"/>
<context id="Mysql" targetRuntime="MyBatis3Simple" defaultModelType="flat">
<property name="beginningDelimiter" value="`"/>
<property name="endingDelimiter" value="`"/>
<property name="javaFileEncoding" value="UTF-8"/>
<plugin type="tk.mybatis.mapper.generator.MapperPlugin">
<property name="mappers" value="tk.mybatis.mapper.common.Mapper"/>
</plugin>
<!-- -->
<commentGenerator>
<!-- -->
<property name="suppressDate" value="true"/>
<!-- true: : false: -->
<property name="suppressAllComments" value="false"/>
</commentGenerator>
<!-- JDBC -->
<jdbcConnection
driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/test?characterEncoding=UTF-8"
userId="root"
password="123456">
</jdbcConnection>
<!-- -->
<javaModelGenerator targetPackage="com.chaoqi.springboot_mybatisplus.dao.domain" targetProject="src/main/java"/>
<!-- mapper xml -->
<sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources"/>
<!-- mapper xml Client-->
<javaClientGenerator targetPackage="com.chaoqi.springboot_mybatisplus.dao.mapper" targetProject="src/main/java"
type="XMLMAPPER"/>
<!-- -->
<table tableName="%">
<!--mysql -->
<generatedKey column="id" sqlStatement="Mysql"/>
<!--oracle -->
<!--<generatedKey column="id" sqlStatement="select SEQ_{1}.nextval from dual" identity="false" type="pre"/>-->
</table>
</context>
</generatorConfiguration>
maven 운행 발전기생 성 된 항목 구 조 는 다음 과 같 습 니 다.
5.mybatisplus 통합
service 인터페이스 및 service 구현 클래스 만 들 기
package com.chaoqi.springboot_mybatisplus.service;
import com.chaoqi.springboot_mybatisplus.dao.domain.MusicInfo;
import java.util.List;
public interface MusicInfoService {
public List<MusicInfo> getMusicInfo();
}
package com.chaoqi.springboot_mybatisplus.service.impl;
import com.chaoqi.springboot_mybatisplus.dao.domain.MusicInfo;
import com.chaoqi.springboot_mybatisplus.dao.mapper.MusicInfoMapper;
import com.chaoqi.springboot_mybatisplus.service.MusicInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class MusicInfoServiceImpl implements MusicInfoService {
@Autowired
private MusicInfoMapper musicInfoMapper;
@Override
public List<MusicInfo> getMusicInfo() {
List<MusicInfo> musicInfos = musicInfoMapper.selectAll();
return musicInfos;
}
}
컨트롤 러 생 성
package com.chaoqi.springboot_mybatisplus.web;
import com.chaoqi.springboot_mybatisplus.dao.domain.MusicInfo;
import com.chaoqi.springboot_mybatisplus.service.MusicInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
@RequestMapping(value = "/music")
public class MusicInfoController {
@Autowired
private MusicInfoService musicInfoService;
@RequestMapping("/showMusic")
public List<MusicInfo> getMusicInfo() {
List<MusicInfo> musicInfo1 = musicInfoService.getMusicInfo();
return musicInfo1;
}
}
여기 서 제 mapper 는 sql 을 쓰 지 않 습 니 다.간단 한 sqlmy batiplus 는 모두 봉인 되 어 많은 개발 시간 을 절약 하 였 습 니 다.복잡 한 sql 이 라면 원생 sql 을 써 서 실현 할 수 있 습 니 다.제 두 번 째 블 로그 에서 springboot+springmvc+mybatis 프로젝트 통합 까지 이 야 기 했 습 니 다.SpringbootMybatisplusApplication 주 함수 실행
package com.chaoqi.springboot_mybatisplus;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
@MapperScan("com.chaoqi.springboot_mybatisplus.dao.mapper")
public class SpringbootMybatisplusApplication {
public static void main(String[] args) {
SpringApplication.run(SpringbootMybatisplusApplication.class, args);
}
}
데이터베이스 보기다음은 my batisplus 를 포장 하 는 방법 을 알려 드 립 니 다.이런 방법 들 을 구체 적 으로 어떻게 사용 하 는 지,관심 이 있 는 파트너 는 다음 소스 코드 를 볼 수 있 습 니 다.my batisplus 는 강력 한 페이지 기능 도 있 습 니 다.관심 이 있 으 면 여기,이곳 에 가서 공부 할 수 있 습 니 다.
(원본 다운로드 주소)
마지막 으로 시청 해 주 셔 서 감사합니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Kotlin Springboot -- 파트 14 사용 사례 REST로 전환하여 POST로 JSON으로 전환前回 前回 前回 記事 の は は で で で で で で を 使っ 使っ 使っ て て て て て リクエスト を を 受け取り 、 reqeustbody で 、 その リクエスト の ボディ ボディ を を 受け取り 、 関数 内部 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.