国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用)

這篇具有很好參考價值的文章主要介紹了SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

1.整合MyBatis

1.需求分析

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

2.數(shù)據(jù)庫表設(shè)計
CREATE DATABASE `springboot_mybatis`;

use `springboot_mybatis`;

CREATE TABLE `monster` (
 `id` INT NOT NULL AUTO_INCREMENT,
 `age` INT NOT NULL, 
 `birthday` DATE DEFAULT NULL, 
 `email` VARCHAR(255) DEFAULT NULL,
 `gender` char(1) DEFAULT NULL,
 `name` VARCHAR(255) DEFAULT NULL, 
 `salary` DOUBLE NOT NULL,
 PRIMARY KEY (`id`)
);

SELECT * FROM `monster`;

insert into monster values(null, 20, '2000-11-11', 'nmw@sohu.com', '男', '牛魔王', 5000.88);
insert into monster values(null, 10, '2011-11-11', 'bgj@sohu.com', '女', '白骨精', 2000.00);
3.數(shù)據(jù)庫環(huán)境配置
1.新建maven項目

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

2.pom.xml 引入依賴
    <!--導(dǎo)入springboot父工程-->
    <parent>
        <artifactId>spring-boot-starter-parent</artifactId>
        <groupId>org.springframework.boot</groupId>
        <version>2.5.3</version>
    </parent>

    <!--引入相關(guān)依賴-->
    <dependencies>
        <!--常規(guī)依賴-->
        <!--web場景啟動器-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!--lombok-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <!--引入測試場景啟動器-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <!--配置處理器-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-configuration-processor</artifactId>
            <optional>true</optional>
        </dependency>

        <!--數(shù)據(jù)庫配置-->
        <!--引入data-jdbc數(shù)據(jù)源-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jdbc</artifactId>
        </dependency>
        <!--mysql依賴使用版本仲裁-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <!-- 引入 druid 依賴 -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.1.17</version>
        </dependency>
        <!--MyBatis場景啟動器-->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.2.2</version>
        </dependency>
    </dependencies>
3.application.yml 配置數(shù)據(jù)源
  • 數(shù)據(jù)庫名
  • 用戶名
  • 密碼
  • 驅(qū)動是mysql8的(因為上面使用了版本仲裁)
server:
  port: 8080
spring:
  datasource: #配置數(shù)據(jù)源
    url: jdbc:mysql://localhost:3306/springboot_mybatis?useSSL=false&useUnicode=true&characterEncoding=UTF-8
    username: root
    password: root
    driver-class-name: com.mysql.cj.jdbc.Driver
4.Application.java 編寫啟動類
package com.sun.springboot.mybatis;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

/**
 * @author 孫顯圣
 * @version 1.0
 */
@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

5.測試
package com.sun.springboot.mybatis;

import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.jdbc.core.JdbcTemplate;

import javax.annotation.Resource;

/**
 * @author 孫顯圣
 * @version 1.0
 */
@SpringBootTest
public class ApplicationTest {
    //依賴注入
    @Resource
    private JdbcTemplate jdbcTemplate;

    @Test
    public void t1() {
        //查看目前數(shù)據(jù)源
        System.out.println(jdbcTemplate.getDataSource().getClass());
    }
}

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

6.配置類切換druid數(shù)據(jù)源
package com.sun.springboot.mybatis.config;

import com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.druid.support.http.StatViewServlet;
import com.alibaba.druid.support.http.WebStatFilter;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import javax.sql.DataSource;
import java.sql.SQLException;
import java.util.Arrays;

/**
 * @author 孫顯圣
 * @version 1.0
 */
@Configuration
public class DruidDataSourceConfig {

    //注入一個德魯伊數(shù)據(jù)源
    @ConfigurationProperties("spring.datasource") //讀取yaml配置文件的參數(shù),獲取數(shù)據(jù)源配置
    @Bean
    public DataSource dataSource() throws SQLException {
        DruidDataSource druidDataSource = new DruidDataSource();
        druidDataSource.setFilters("stat, wall"); //開啟sql監(jiān)控
        return druidDataSource;
    }

    //配置德魯伊監(jiān)控sql功能
    @Bean
    public ServletRegistrationBean statViewServlet() {
        StatViewServlet statViewServlet = new StatViewServlet();
        ServletRegistrationBean<StatViewServlet> registrationBean =
                new ServletRegistrationBean<>(statViewServlet, "/druid/*");
        //配置登錄監(jiān)控頁面用戶名和密碼
        registrationBean.addInitParameter("loginUsername", "root");
        registrationBean.addInitParameter("loginPassword", "root");
        return registrationBean;
    }

    //配置webStatFilter
    @Bean
    public FilterRegistrationBean webStatFilter() {
        WebStatFilter webStatFilter = new WebStatFilter();
        FilterRegistrationBean<WebStatFilter> filterRegistrationBean =
                new FilterRegistrationBean<>(webStatFilter);
        //默認(rèn)對所有 URL 請求監(jiān)控
        filterRegistrationBean.setUrlPatterns(Arrays.asList("/*"));
        //排除 URL
        filterRegistrationBean.addInitParameter
                ("exclusions", "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*");
        return filterRegistrationBean;
    }
}
7.測試數(shù)據(jù)源是否成功切換
package com.sun.springboot.mybatis;

import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.jdbc.core.JdbcTemplate;

import javax.annotation.Resource;

/**
 * @author 孫顯圣
 * @version 1.0
 */
@SpringBootTest
public class ApplicationTest {
    //依賴注入
    @Resource
    private JdbcTemplate jdbcTemplate;

    @Test
    public void t1() {
        //查看目前數(shù)據(jù)源
        System.out.println(jdbcTemplate.getDataSource().getClass());
    }
}

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

4.Mybatis基礎(chǔ)配置
1.編寫映射表的bean
package com.sun.springboot.mybatis.bean;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.util.Date;

/**
 * @author 孫顯圣
 * @version 1.0
 */
@Data
public class Monster {
    private Integer id;
    private Integer age;
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date birthday;
    private String email;
    private String name;
    private String gender;
    private Double salary;
}

2.MonsterMapper.java 編寫mapper接口
  • 使用注解注入容器
package com.sun.springboot.mybatis.mapper;

import com.sun.springboot.mybatis.bean.Monster;
import org.apache.ibatis.annotations.Mapper;

/**
 * @author 孫顯圣
 * @version 1.0
 */
@Mapper //將接口注入容器
public interface MonsterMapper {
    public Monster getMonsterById(Integer id);
}

3.MonsterMapper.xml 編寫mapper.xml實現(xiàn)mapper接口
  • 使用namespace指定要實現(xiàn)的接口
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "https://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!--指定要實現(xiàn)的接口-->
<mapper namespace="com.sun.springboot.mybatis.mapper.MonsterMapper">
    <select id="getMonsterById" resultType="com.sun.springboot.mybatis.bean.Monster" parameterType="Integer">
        select * from monster where id = #{id}
    </select>
</mapper>

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

4.application.yml 掃描mapper.xml配置文件的位置
  • 掃描類路徑下mapper文件夾下的所有文件
mybatis:
  #指定要掃描的mapper.xml
  mapper-locations: classpath:mapper/*.xml
5.測試
package com.sun.springboot.mybatis;

import com.sun.springboot.mybatis.bean.Monster;
import com.sun.springboot.mybatis.mapper.MonsterMapper;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.jdbc.core.JdbcTemplate;

import javax.annotation.Resource;

/**
 * @author 孫顯圣
 * @version 1.0
 */
@SpringBootTest
public class ApplicationTest {
    //依賴注入
    @Resource
    private JdbcTemplate jdbcTemplate;
    //注意這里注入的是MonsterMapper的代理對象
    @Resource
    private MonsterMapper monsterMapper;

    @Test
    public void t1() {
        //查看目前數(shù)據(jù)源
        System.out.println(jdbcTemplate.getDataSource().getClass());
    }

    @Test
    public void t2() {
        //測試mybatis
        Monster monsterById = monsterMapper.getMonsterById(1);
        System.out.println(monsterById);
    }
}

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

5.MyBatis高級配置
1.方式一:在application.yml中配置mybatis.config-location指定mybatis-config.xml配置文件的位置
2.方式二:直接在application.yml中配置
mybatis:
  #指定要掃描的mapper.xml
  mapper-locations: classpath:mapper/*.xml
  #配置類型別名包,這樣只要在這個包下的類型都可以簡寫
  type-aliases-package: com/sun/springboot/mybatis/bean
  #輸出日志
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
6.繼續(xù)編寫Service層和Controller層
1.MonsterService.java
package com.sun.springboot.mybatis.service;

import com.sun.springboot.mybatis.bean.Monster;

/**
 * @author 孫顯圣
 * @version 1.0
 */
public interface MonsterService {
    public Monster getMonsterById(Integer id);
}

2.MonsterServiceImpl.java
package com.sun.springboot.mybatis.service.Impl;

import com.sun.springboot.mybatis.bean.Monster;
import com.sun.springboot.mybatis.mapper.MonsterMapper;
import com.sun.springboot.mybatis.service.MonsterService;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;

/**
 * @author 孫顯圣
 * @version 1.0
 */
@Service
public class MonsterServiceImpl implements MonsterService {
    @Resource
    private MonsterMapper monsterMapper; //返回代理對象
    @Override
    public Monster getMonsterById(Integer id) {
        return monsterMapper.getMonsterById(id);
    }
}
3.測試
package com.sun.springboot.mybatis;

import com.sun.springboot.mybatis.bean.Monster;
import com.sun.springboot.mybatis.mapper.MonsterMapper;
import com.sun.springboot.mybatis.service.MonsterService;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.jdbc.core.JdbcTemplate;

import javax.annotation.Resource;

/**
 * @author 孫顯圣
 * @version 1.0
 */
@SpringBootTest
public class ApplicationTest {
    //依賴注入
    @Resource
    private MonsterService monsterService;

    @Test
    public void getMonsterById() {
        Monster monsterById = monsterService.getMonsterById(1);
        System.out.println(monsterById);
    }
}

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

4.MonsterController.java
package com.sun.springboot.mybatis.Controller;

import com.sun.springboot.mybatis.bean.Monster;
import com.sun.springboot.mybatis.service.MonsterService;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.annotation.Resource;

/**
 * @author 孫顯圣
 * @version 1.0
 */
@Controller
public class MonsterController {
    @Resource
    private MonsterService monsterService;

    @GetMapping("/getMonster/{id}") //路徑參數(shù)的請求
    @ResponseBody //響應(yīng)一個json
    public Monster getMonsterById(@PathVariable("id") Integer id) {
        Monster monsterById = monsterService.getMonsterById(id);
        return monsterById;
    }
}

5.測試

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

6.解決時間問題

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

7.完整文件目錄

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

2.整合MyBatis-Plus

1.MyBatis-Plus基本介紹

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

2.數(shù)據(jù)庫表設(shè)計
CREATE DATABASE `springboot_mybatisplus`;

USE `springboot_mybatisplus`;

CREATE TABLE `monster` (
`id` INT NOT NULL AUTO_INCREMENT,
`age` INT NOT NULL, 
`birthday` DATE DEFAULT NULL, 
`email` VARCHAR(255) DEFAULT NULL, 
`gender` CHAR(1) DEFAULT NULL, 
`name` VARCHAR(255) DEFAULT NULL, 
`salary` DOUBLE NOT NULL,
PRIMARY KEY (`id`)
);
SELECT * FROM `monster`;
INSERT INTO monster VALUES(NULL, 20, '2000-11-11', 'xzj@sohu.com', '男', ' 蝎 子 精 ',
15000.88);
INSERT INTO monster VALUES(NULL, 10, '2011-11-11', 'ytj@sohu.com', '女', ' 玉 兔 精 ',
18000.88);
3.數(shù)據(jù)庫環(huán)境配置
1.創(chuàng)建maven項目

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

2.pom.xml 導(dǎo)入依賴
  <!--導(dǎo)入springboot父工程-->
  <parent>
    <artifactId>spring-boot-starter-parent</artifactId>
    <groupId>org.springframework.boot</groupId>
    <version>2.5.3</version>
  </parent>

  <!--引入相關(guān)依賴-->
  <dependencies>
    <!--常規(guī)依賴-->
    <!--web場景啟動器-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <!--lombok-->
    <dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
      <optional>true</optional>
    </dependency>
    <!--引入測試場景啟動器-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-test</artifactId>
      <scope>test</scope>
    </dependency>
    <!--配置處理器-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-configuration-processor</artifactId>
      <optional>true</optional>
    </dependency>

    <!--數(shù)據(jù)庫配置-->
    <!--mysql依賴使用版本仲裁-->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <scope>runtime</scope>
    </dependency>
    <!-- 引入 druid 依賴 -->
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>druid</artifactId>
      <version>1.1.17</version>
    </dependency>
    
    <!--引入MyBatis-Plus場景啟動器,會自動引入jdbc和MyBatis-->
    <dependency>
      <groupId>com.baomidou</groupId>
      <artifactId>mybatis-plus-boot-starter</artifactId>
      <version>3.4.3</version>
    </dependency>
  </dependencies>
3.application.yml 配置數(shù)據(jù)源
  • 數(shù)據(jù)庫名稱
  • 用戶名
  • 密碼
server:
  port: 8080
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/springboot_mybatisplus?useSSL=false&useUnicode=true&characterEncoding=UTF-8
    username: root
    password: root

4.DruidDataSourceConfig.java 配置類切換druid數(shù)據(jù)源
package com.sun.springboot.mybatisplus.config;

import com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.druid.support.http.StatViewServlet;
import com.alibaba.druid.support.http.WebStatFilter;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import javax.sql.DataSource;
import java.sql.SQLException;
import java.util.Arrays;

/**
 * @author 孫顯圣
 * @version 1.0
 */
@Configuration
public class DruidDataSourceConfig {

    //注入一個德魯伊數(shù)據(jù)源
    @ConfigurationProperties("spring.datasource") //讀取yaml配置文件的參數(shù),獲取數(shù)據(jù)源配置
    @Bean
    public DataSource dataSource() throws SQLException {
        DruidDataSource druidDataSource = new DruidDataSource();
        druidDataSource.setFilters("stat, wall"); //開啟sql監(jiān)控
        return druidDataSource;
    }

    //配置德魯伊監(jiān)控sql功能
    @Bean
    public ServletRegistrationBean statViewServlet() {
        StatViewServlet statViewServlet = new StatViewServlet();
        ServletRegistrationBean<StatViewServlet> registrationBean =
                new ServletRegistrationBean<>(statViewServlet, "/druid/*");
        //配置登錄監(jiān)控頁面用戶名和密碼
        registrationBean.addInitParameter("loginUsername", "root");
        registrationBean.addInitParameter("loginPassword", "root");
        return registrationBean;
    }

    //配置webStatFilter
    @Bean
    public FilterRegistrationBean webStatFilter() {
        WebStatFilter webStatFilter = new WebStatFilter();
        FilterRegistrationBean<WebStatFilter> filterRegistrationBean =
                new FilterRegistrationBean<>(webStatFilter);
        //默認(rèn)對所有 URL 請求監(jiān)控
        filterRegistrationBean.setUrlPatterns(Arrays.asList("/*"));
        //排除 URL
        filterRegistrationBean.addInitParameter
                ("exclusions", "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*");
        return filterRegistrationBean;
    }
}
5.編寫啟動類Application.java,測試運行
package com.sun.springboot.mybatisplus;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

/**
 * @author 孫顯圣
 * @version 1.0
 */
@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

4.MyBatis-Plus基礎(chǔ)配置
1.編寫映射表的bean
package com.sun.springboot.mybatisplus.bean;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.util.Date;

/**
 * @author 孫顯圣
 * @version 1.0
 */
@Data
public class Monster {
    private Integer id;
    private Integer age;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date birthday;
    private String email;
    private String name;
    private String gender;
    private Double salary;
}
2.MonsterMapper.java 編寫Mapper接口
package com.sun.springboot.mybatisplus.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.sun.springboot.mybatisplus.bean.Monster;
import org.apache.ibatis.annotations.Mapper;

/**
 * @author 孫顯圣
 * @version 1.0
 */
//直接繼承BaseMapper接口
@Mapper //注入容器
public interface MonsterMapper extends BaseMapper<Monster> {
    //如果提供的方法不夠用再自定義方法
}

3.測試接口方法使用
package com.sun.springboot.mybatisplus;

import com.sun.springboot.mybatisplus.bean.Monster;
import com.sun.springboot.mybatisplus.mapper.MonsterMapper;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;

import javax.annotation.Resource;

/**
 * @author 孫顯圣
 * @version 1.0
 */
@SpringBootTest
public class MonsterMapperTest {
    //注入針對Mapper接口的代理對象
    @Resource
    private MonsterMapper monsterMapper;
    @Test
    public void t1() {
        Monster monster = monsterMapper.selectById(1);
        System.out.println(monster);
    }
}

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

5.MyBatis-Plus高級配置
application.yml 進行配置
#進行mybatis-plus配置
mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
6.繼續(xù)編寫Service層和Controller層
1.MonsterService.java
package com.sun.springboot.mybatisplus.service.Impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.sun.springboot.mybatisplus.bean.Monster;
import com.sun.springboot.mybatisplus.mapper.MonsterMapper;
import com.sun.springboot.mybatisplus.service.MonsterService;
import org.springframework.stereotype.Service;

/**
 * 這里
 * @author 孫顯圣
 * @version 1.0
 */
@Service
public class MonsterServiceImpl extends ServiceImpl<MonsterMapper, Monster> implements MonsterService {
    //自定義方法實現(xiàn)
}

2.MonsterServiceImpl.java
package com.sun.springboot.mybatisplus.service.Impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.sun.springboot.mybatisplus.bean.Monster;
import com.sun.springboot.mybatisplus.mapper.MonsterMapper;
import com.sun.springboot.mybatisplus.service.MonsterService;
import org.springframework.stereotype.Service;

/**
 * 這里
 * @author 孫顯圣
 * @version 1.0
 */
@Service
public class MonsterServiceImpl extends ServiceImpl<MonsterMapper, Monster> implements MonsterService {
    //自定義方法實現(xiàn)
}

3.測試
package com.sun.springboot.mybatisplus;

import com.sun.springboot.mybatisplus.bean.Monster;
import com.sun.springboot.mybatisplus.mapper.MonsterMapper;
import com.sun.springboot.mybatisplus.service.MonsterService;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;

import javax.annotation.Resource;

/**
 * @author 孫顯圣
 * @version 1.0
 */
@SpringBootTest
public class MonsterServiceTest {
    @Resource
    private MonsterService monsterService;
    @Test
    public void t1() {
        Monster byId = monsterService.getById(2);
        System.out.println(byId);
    }
}

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

4.細(xì)節(jié)說明
  • 簡單來說就是MonsterServiceImpl只需要實現(xiàn)MonsterService接口的方法
  • 可以調(diào)用IService接口的方法,也可以調(diào)用MonsterService接口的方法

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

5.MonsterController.java
package com.sun.springboot.mybatisplus.controller;

import com.sun.springboot.mybatisplus.bean.Monster;
import com.sun.springboot.mybatisplus.service.MonsterService;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.annotation.Resource;

/**
 * @author 孫顯圣
 * @version 1.0
 */
@Controller
public class MonsterController {
    @Resource
    //注入的是MonsterServiceImpl的bean對象,可以直接調(diào)用IService接口的方法
    private MonsterService monsterService;
    @GetMapping("/getMonster/{id}")
    @ResponseBody
    public Monster getMonsterById(@PathVariable("id") Integer id) {
        Monster byId = monsterService.getById(id);
        return byId;
    }
}

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

7.細(xì)節(jié)說明
1.@MapperScan 掃描包下的所有Mapper
啟動類配置注解

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

2.@TableName bean的類名與表名不一致時使用
SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端
3.MyBatis引入了哪些依賴

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

8.MyBatisX快速開發(fā)
1.安裝插件

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

2.使用方式
1.挑一個帶小鳥的方法

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

2.直接alt + Enter

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

3.生成sql語句

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

4.查看生成的方法

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

5.點擊左邊的小鳥就可以直接跳轉(zhuǎn)到指定方法或者xml

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

9.完整文件目錄

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端

10.MyBatis-Plus小結(jié)

SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用),SpringBoot學(xué)習(xí)日記,spring boot,mybatis,后端文章來源地址http://www.zghlxwxcb.cn/news/detail-841761.html

到了這里,關(guān)于SpringBoot(整合MyBatis + MyBatis-Plus + MyBatisX插件使用)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Springboot 整合Mytbatis與Mybatis-Plus

    Springboot 整合Mytbatis與Mybatis-Plus

    目錄 1. springboot整合mybatis?? ?1.1 添加pom.xml依賴 ?1.2 新建jdbc.properties 文件添加以下內(nèi)容 ?1.3 新建generatorConfig.xml 文件添加以下內(nèi)容 (自動生成代碼類)? ?1.4 修改application.properties 文件 添加以下內(nèi)容 ?1.5 修改主類MapperScan ?1.6 編寫接口實現(xiàn)類進行測試? 2. springboot整合mybatis-p

    2024年02月06日
    瀏覽(23)
  • SpringBoot整合MyBatis-Plus,趕緊整過來!

    提示:以下是本篇文章正文內(nèi)容 MyBatis-Plus官網(wǎng)介紹:MyBatis-Plus (opens new window)(簡稱 MP)是一個 MyBatis (opens new window)的增強工具,在 MyBatis 的基礎(chǔ)上只做增強不做改變,為簡化開發(fā)、提高效率而生。 MyBatis-Plus封裝了單表的crud操作,減少基礎(chǔ)代碼編寫,提高開發(fā)效率。 支持自

    2024年02月06日
    瀏覽(18)
  • SpringBoot整合Mybatis-plus實現(xiàn)商品推薦

    在開始編寫代碼之前,我們需要準(zhǔn)備一下環(huán)境: Java 8+ IntelliJ IDEA Node.js 和 npm Vue CLI 如果你還沒有安裝Vue CLI,則可以使用以下命令在終端中安裝: 首先,我們需要使用Spring Boot創(chuàng)建一個新項目。在IntelliJ IDEA中,選擇“New Project”,然后選擇“Spring Initializr”。 在“New Project”

    2024年02月01日
    瀏覽(18)
  • SpringBoot整合JUnit--MyBatis--MyBatis-Plus--Druid

    SpringBoot整合JUnit--MyBatis--MyBatis-Plus--Druid

    文章轉(zhuǎn)自黑馬程序員SpringBoot學(xué)習(xí)筆記,學(xué)習(xí)網(wǎng)址:黑馬程序員SpringBoot2教程 1.整合JUnit ? SpringBoot技術(shù)的定位用于簡化開發(fā),再具體點是簡化Spring程序的開發(fā)。所以在整合任意技術(shù)的時候,如果你想直觀感觸到簡化的效果,你必須先知道使用非SpringBoot技術(shù)時對應(yīng)的整合是如何做

    2023年04月23日
    瀏覽(26)
  • Springboot3整合Mybatis-plus3.5.3報錯

    Springboot3整合Mybatis-plus3.5.3報錯

    ?作者簡介:大家好,我是Leo,熱愛Java后端開發(fā)者,一個想要與大家共同進步的男人???? ??個人主頁:Leo的博客 ??當(dāng)前專欄: 報錯以及Bug ?特色專欄: MySQL學(xué)習(xí) ??本文內(nèi)容:記錄一次Docker與Redis沖突 ???個人小站 :個人博客,歡迎大家訪問 ??個人知識庫: 知識庫,

    2024年02月05日
    瀏覽(20)
  • SpringBoot整合Mybatis-Plus+Druid實現(xiàn)多數(shù)據(jù)源

    SpringBoot整合Mybatis-Plus+Druid實現(xiàn)多數(shù)據(jù)源

    ??本文主要講解 springboot +mybatisplus + druid 實現(xiàn)多數(shù)據(jù)源配置功能 ?? 主頁傳送門:?? 傳送 Spring Boot: ? ?Spring Boot是一個基于Spring框架的開源Java開發(fā)框架,旨在簡化Spring應(yīng)用程序的開發(fā)、配置和部署。它提供了一種快速、敏捷的方式來構(gòu)建獨立的、生產(chǎn)級別的Spring應(yīng)用程

    2024年02月09日
    瀏覽(25)
  • SpringBoot整合Mybatis-Plus、Druid配置多數(shù)據(jù)源

    SpringBoot整合Mybatis-Plus、Druid配置多數(shù)據(jù)源

    目錄 1.初始化項目 1.1.初始化工程 1.2.添加依賴 1.3.配置yml文件 1.4.Spring Boot 啟動類中添加?@MapperScan?注解,掃描 Mapper 文件夾 1.5.配置使用數(shù)據(jù)源 1.5.1.注解方式 1.5.2.基于AOP手動實現(xiàn)多數(shù)據(jù)源原生的方式 2.結(jié)果展示 Mybatis-Plus:簡介 | MyBatis-Plus (baomidou.com) 在正式開始之前,先初始

    2024年02月11日
    瀏覽(24)
  • SpringBoot整合mybatis-plus實現(xiàn)分頁查詢(建議收藏)

    SpringBoot整合mybatis-plus實現(xiàn)分頁查詢(建議收藏)

    一、前言 ? ? ? ? 最近學(xué)習(xí)了SpringBoot分頁查詢的兩種寫法,一種是手動實現(xiàn),另一種是使用框架實現(xiàn)?,F(xiàn)在我將具體的實現(xiàn)流程分享一下。 二、手動實現(xiàn)分頁查詢 ????????先復(fù)習(xí)一下,SQL中的limit,下面一行sql語句的意思是從第二個數(shù)據(jù)開始查,查詢出兩條數(shù)據(jù)

    2024年01月16日
    瀏覽(18)
  • SpringBoot整合Mybatis-Plus、Jwt實現(xiàn)登錄token設(shè)置

    SpringBoot整合Mybatis-Plus、Jwt實現(xiàn)登錄token設(shè)置

    Spring Boot整合Mybatis-plus實現(xiàn)登錄常常需要使用JWT來生成用戶的token并設(shè)置用戶權(quán)限的攔截器。本文將為您介紹JWT的核心講解、示例代碼和使用規(guī)范,以及如何實現(xiàn)token的生成和攔截器的使用。 一、JWT的核心講解 JWT(JSON Web Token)是一種基于JSON的,用于在網(wǎng)絡(luò)上安全傳輸信息的

    2024年02月02日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包