前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >springboot整合mybatis(配置模式+注解模式)

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

作者头像
全栈程序员站长
发布2022-09-12 10:33:04
4830
发布2022-09-12 10:33:04
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

springboot整合mybatis

一.简单介绍

1.配置相关的依赖 2.配置模式

3写.mapper、controller、service 4.配置yaml文件 配置mybatis全局配置文件 (这里我使用的是配置模式+注解模式所以需要配置全局文件)

二具体配置

2.1.配置相关的依赖.

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

代码语言:javascript
复制
		<dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.25</version>
        </dependency>
        <!--mybatis整合springboot起步依赖-->
        <!-- https://mvnrepository.com/artifact/org.mybatis.spring.boot/mybatis-spring-boot-starter -->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.3</version>
        </dependency>

2.2 写.mapper、controller、service

在写这个之前话要写基本的pojo

pojo相关 这里使用了 lombok

代码语言:javascript
复制
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;
}

2.2.1mapper文件

话不多说注意代码的注释

代码语言:javascript
复制
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<ssmdb> getAll();

}

2.2.2service文件

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

代码语言:javascript
复制
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<ssmdb> getAll(){ 
   
        return ssmdbMapper.getAll();
    }
}

2.2.2controller文件

代码语言:javascript
复制
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<ssmdb> all = ser.getAll();
        return all.toString();
    }

}

2.3配置相关文件

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

代码语言:javascript
复制
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

2.由于用配置模式+注解模式所以需要配置mybatis全局文件

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

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <!--基本的东西都不用配置,因为springboot配好了-->
</configuration>

接着在mapper文件下写mybatis对应的mapper配置

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xbfinal.mapper.ssmdbMapper">
    
    <!--public List<ssmdb> getAll();-->
    <select id="getAll" resultType="com.xbfinal.pojo.ssmdb">
        select * from tbl_book
    </select>
</mapper>

最后在yaml文件中配好mybatis

代码语言:javascript
复制
mybatis:
  config-location: classpath:static/mybatis/mybatis-config.xml
  mapper-locations: classpath:static/mybatis/mapper/*.xml

三、结果截图

数据库

四、可能遇到的报错

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

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

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/152637.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • springboot整合mybatis
  • 一.简单介绍
  • 二具体配置
    • 2.1.配置相关的依赖.
      • 2.2 写.mapper、controller、service
        • 2.2.1mapper文件
        • 2.2.2service文件
        • 2.2.2controller文件
      • 2.3配置相关文件
      • 三、结果截图
      • 四、可能遇到的报错
        • SpringBoot连接数据库报错:Access denied for user ‘root‘@‘localhost‘ (using password: YES)
        相关产品与服务
        数据库
        云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档