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

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: springboot整合mybatis一.简单介绍二具体配置2.1.配置相关的依赖.2.2 写.mapper、controller、service2.2.1mapper文件2.2.2service文件2.2.2controller文件2.3配置相关文件三、结果截图四、可能遇到的报错SpringBoot连接数据库报错:Access denied for user ‘root‘@‘localhost‘ (using password: YES)

一.简单介绍


1.配置相关的依赖


2.配置模式


3写.mapper、controller、service


4.配置yaml文件 配置mybatis全局配置文件


(这里我使用的是配置模式+注解模式所以需要配置全局文件)


二、具体配置


2.1.配置相关的依赖.


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


    <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


e3fc96689bb84ce8a635c78759af50f3.png


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;
}


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<ssmdb> getAll();
}


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<ssmdb> getAll(){
        return ssmdbMapper.getAll();
    }
}


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<ssmdb> all = ser.getAll();
        return all.toString();
    }
}


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


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


c23a9685003e4d67a6f4d9aeda17a6b0.png


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


<?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配置


714d47f4180644baa49240c1332c06a0.png


<?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


cf28410d60bb4267a9941970df588139.png


mybatis:
  config-location: classpath:static/mybatis/mybatis-config.xml
  mapper-locations: classpath:static/mybatis/mapper/*.xml


三、结果截图

8a0d626347af4abb8878a7ec7c35ca3b.pngc8869427a5d94f008cec0716f69c4dbd.pngf23032d94f5a4f2ca338f9cece57bcb1.png


四、可能遇到的报错


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


解决方案


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


45c73744f12b4c9da4c14bf5758ce190.png


相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
13天前
|
XML Java 数据格式
SpringBoot入门(8) - 开发中还有哪些常用注解
SpringBoot入门(8) - 开发中还有哪些常用注解
34 0
|
1月前
|
Java Spring
在使用Spring的`@Value`注解注入属性值时,有一些特殊字符需要注意
【10月更文挑战第9天】在使用Spring的`@Value`注解注入属性值时,需注意一些特殊字符的正确处理方法,包括空格、引号、反斜杠、新行、制表符、逗号、大括号、$、百分号及其他特殊字符。通过适当包裹或转义,确保这些字符能被正确解析和注入。
|
10天前
|
Java 开发者 微服务
手写模拟Spring Boot自动配置功能
【11月更文挑战第19天】随着微服务架构的兴起,Spring Boot作为一种快速开发框架,因其简化了Spring应用的初始搭建和开发过程,受到了广大开发者的青睐。自动配置作为Spring Boot的核心特性之一,大大减少了手动配置的工作量,提高了开发效率。
30 0
|
1月前
|
Java API 数据库
Spring Boot框架因其简洁的配置、快速的启动特性及丰富的功能集而备受开发者青睐
本文通过在线图书管理系统案例,详细介绍如何使用Spring Boot构建RESTful API。从项目基础环境搭建、实体类与数据访问层定义,到业务逻辑实现和控制器编写,逐步展示了Spring Boot的简洁配置和强大功能。最后,通过Postman测试API,并介绍了如何添加安全性和异常处理,确保API的稳定性和安全性。
38 0
|
9天前
|
SQL Java 数据库连接
【MyBatisPlus·最新教程】包含多个改造案例,常用注解、条件构造器、代码生成、静态工具、类型处理器、分页插件、自动填充字段
MyBatis-Plus是一个MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。本文讲解了最新版MP的使用教程,包含多个改造案例,常用注解、条件构造器、代码生成、静态工具、类型处理器、分页插件、自动填充字段等核心功能。
【MyBatisPlus·最新教程】包含多个改造案例,常用注解、条件构造器、代码生成、静态工具、类型处理器、分页插件、自动填充字段
|
15天前
|
缓存 IDE Java
SpringBoot入门(7)- 配置热部署devtools工具
SpringBoot入门(7)- 配置热部署devtools工具
27 2
 SpringBoot入门(7)- 配置热部署devtools工具
|
20天前
|
XML JSON Java
SpringBoot必须掌握的常用注解!
SpringBoot必须掌握的常用注解!
43 4
SpringBoot必须掌握的常用注解!
|
5天前
|
存储 前端开发 JavaScript
springboot中路径默认配置与重定向/转发所存在的域对象
Spring Boot 提供了简便的路径默认配置和强大的重定向/转发机制,通过合理使用这些功能,可以实现灵活的请求处理和数据传递。理解并掌握不同域对象的生命周期和使用场景,是构建高效、健壮 Web 应用的关键。通过上述详细介绍和示例,相信读者能够更好地应用这些知识,优化自己的 Spring Boot 应用。
15 3
|
13天前
|
Java 数据库连接
SpringBoot配置多数据源实战
第四届光学与机器视觉国际学术会议(ICOMV 2025) 2025 4th International Conference on Optics and Machine Vision
42 8
|
11天前
|
Java 数据库连接 数据库
springboot启动配置文件-bootstrap.yml常用基本配置
以上是一些常用的基本配置项,在实际应用中可能会根据需求有所变化。通过合理配置 `bootstrap.yml`文件,可以确保应用程序在启动阶段加载正确的配置,并顺利启动运行。
21 2
下一篇
无影云桌面