• springboot整合mybatis(配置模式+注解模式)


    前言
    ??作者简介:我是,一名热爱技术的在校学生。
    ??个人主页:的主页
    ??如果文章知识点有错误的地方,请指正!和大家一起学习,一起进步??
    ??如果感觉博主的文章还不错的话,??点赞?? + ??关注?? + ??收藏??

    springboot整合mybatis

    一.简单介绍

    1.配置相关的依赖
    2.配置模式
    在这里插入图片描述
    3写.mapper、controller、service
    4.配置yaml文件 配置mybatis全局配置文件
    (这里我使用的是配置模式+注解模式所以需要配置全局文件)

    二具体配置

    2.1.配置相关的依赖.

    当然也可以在创建springboot的时候勾选对应的功能

    		
                mysql
                mysql-connector-java
                8.0.25
            
            
            
            
                org.mybatis.spring.boot
                mybatis-spring-boot-starter
                2.1.3
            
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    2.2 写.mapper、controller、service

    在写这个之前话要写基本的pojo
    在这里插入图片描述

    pojo相关 这里使用了 lombok

    package com.xbfinal.pojo;
    
    import lombok.AllArgsConstructor;
    import lombok.Data;
    import lombok.NoArgsConstructor;
    
    @Data
    @AllArgsConstructor
    @NoArgsConstructor
    public class ssmdb {
        private Integer id;
        private String name;
        private String type;
        private String description;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    2.2.1mapper文件

    话不多说注意代码的注释

    package com.xbfinal.mapper;
    
    
    import com.xbfinal.pojo.ssmdb;
    import org.apache.ibatis.annotations.Mapper;
    import org.apache.ibatis.annotations.Select;
    
    import java.util.List;
    
    @Mapper
    public interface ssmdbMapper {
    
        //更具id查对应的书用注解模式
        @Select("select * from tbl_book where id=#{id}")
        public ssmdb getById(int id);
    
        //查询所有的书 ,这里我们用配置模式
        //配置模式我个人喜欢用来写复制的sql语句(狗头)
        public List getAll();
    
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21

    2.2.2service文件

    一般用来实现mapper的 直接看代码

    package com.xbfinal.service;
    
    import com.xbfinal.mapper.ssmdbMapper;
    import com.xbfinal.pojo.ssmdb;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Service;
    
    import java.util.List;
    
    @Service
    public class ser {
        @Autowired
        ssmdbMapper ssmdbMapper;
        public ssmdb getById(int id){
            return ssmdbMapper.getById(id);
        }
        public List getAll(){
            return ssmdbMapper.getAll();
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    2.2.2controller文件

    package com.xbfinal.controller;
    
    import com.xbfinal.pojo.ssmdb;
    import com.xbfinal.service.ser;
    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
    public class controller01 {
        @Autowired
        ser ser;
        @RequestMapping("/id")
        public String to01(){
            
         final ssmdb byId = ser.getById(1);
            return byId.toString();
        }
        @RequestMapping("/all")
        public String to02(){
            // final ssmdb byId = ser.getById(1);
    
            final List all = ser.getAll();
            return all.toString();
        }
    
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29

    2.3配置相关文件

    1.写mysql的文件。写在application.yaml文件中

    spring:
      datasource:
        password: 0615
        username: root
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://localhost:3306/ssm_db?serverTimezone=UTC&characterEncoding=utf8&useUnicode=true&useSSL=false
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    2.由于用配置模式+注解模式所以需要配置mybatis全局文件
    在这里插入图片描述

    在static文件下创建mybatis文件夹然后创建配置文件如下

    
    
    
        
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    接着在mapper文件下写mybatis对应的mapper配置
    在这里插入图片描述

    
    
    
        
        
        
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    最后在yaml文件中配好mybatis

    在这里插入图片描述

    mybatis:
      config-location: classpath:static/mybatis/mybatis-config.xml
      mapper-locations: classpath:static/mybatis/mapper/*.xml
    
    • 1
    • 2
    • 3

    三、结果截图

    在这里插入图片描述
    在这里插入图片描述

    数据库
    在这里插入图片描述

    四、可能遇到的报错

    SpringBoot连接数据库报错:Access denied for user ‘root‘@‘localhost‘ (using password: YES)

    解决方案
    检查自己的mysql配置是否正确如果正确尝试一下把密码加上""如图

    在这里插入图片描述

    更多内容
    在这里插入图片描述

    先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦

  • 相关阅读:
    操作系统 | 进程与线程
    Centos7安装Docker
    深度学习(part7)--Keras常用模块
    基于 IntelliJ 的 IDE 将提供 Wayland 支持
    Cadence OrCAD Capture ERC检查ERC Matrix详细说明
    vue之使用箭头函数导致表格无法刷新数据
    一个基于Notes的CMR应用程序
    如何解决php脚本运行占用内存过大无法释放或者内存不足的问题
    如何处理 form 表单提交后的响应信息?
    java毕业设计爱馨敬老院网站Mybatis+系统+数据库+调试部署
  • 原文地址:https://blog.csdn.net/m0_67402564/article/details/126114889