当前位置:首页 > Java技术 > springboot整合mybatis配置

springboot整合mybatis配置

2022年11月09日 23:10:01Java技术8

springboot整合mybatis配置

本文只说明在springboot中配置mybatis,不涉及springboot的创建。
本篇是我用来记录自己整合配置过程的,小白的话请绕道,或者看完整篇再决定是否是你需要的东西。

首先pom依赖

<dependency>
	<groupId>mysql</groupId>
	<artifactId>mysql-connector-java</artifactId>
	<scope>runtime</scope>
</dependency>
<dependency>
	<groupId>org.mybatis.spring.boot</groupId>
	<artifactId>mybatis-spring-boot-starter</artifactId>
	<version>1.3.2</version>
</dependency>

然后是application.yml(application.properties)。我用的是.yml配置文件。.yml和.properties没什么区别,差异在于yml会有层级的划分,并且注意在冒号:后面要有空格

server:
  port:8080

#数据库配置
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/nowcoder?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC
    username: root
    password: 123456
#模板引擎配置
  thymeleaf:
    encoding: UTF-8
    #suffix: .html  默认后缀
    #prefix: classpath:/templates/  默认前缀

mybatis:
  mapperLocations: classpath:mapper/*.xml
  config-location: classpath:mybatis-config.xml
  typeAliasesPackage: com.example.domain

从上往下说明

  • 端口设置,没什么好说的
  • 数据库配置:在我用的mysql版本中,url中的useSSLserverTimezone都是必要的,没有的话会有警告,甚至是报错。
  • 模板引擎配置:这里我用的是thymeleaf的模板引擎,它有默认前缀和后缀,我只是记录一下。
  • 最后是mybatis:我们先看一下目录结构

springboot整合mybatis配置 _ JavaClub全栈架构师技术笔记

  mapperLocations: classpath:mapper/*.xml
  config-location: classpath:mybatis-config.xml
  typeAliasesPackage: com.example.domain

mybatis分别配置了这三样

  • mapper的位置,就是.xml文件的位置,如果没有配置,就默认去mapper接口类所在的包中去找。所以会发现我的目录结构是UserMapper.java和Usermapper.xml都在com/example/mapper文件夹中(虽然这两个文件在这里看好像没有在一个地方,但是在编译之后,java文件夹和resources文件夹下的文件都会编译到target中,最终结果就是这两个都会在同一个包下)

    当然,我这里已经配置了mapper的位置,com/example/mapper/UserMapper.xml文件就不会生效了,生效的是我配置的mapper/UserMapper.xml文件

  • 配置文件的位置,这里我mybatis的配置文件什么都没有写,但是还是需要有这个文件。其实包括上一个提到的mapper的位置,还有下一个会提到的实体类的别名都可以在配置文件中配置。贴一下配置文件的代码

<?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>
    <!--以下已经在application.yml中配置过了-->
    <!--<typeAliases>-->
        <!--<package name="com.example.domain"/>-->
    <!--</typeAliases>-->
    <!--<mappers>-->
        <!--<mapper resource="mapper/UserMapper.xml"/>-->
    <!--</mappers>-->
</configuration>

  • 实体类的别名。这个包下面的实体类都可以使用别名。com.example.domain.User --> User.

差不多就是这样了,mybatis的配置很简单,在这里记录一下。最后贴一下UserMapper.xml文件

<?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.example.mapper.UserMapper">
    <select id="findAllUser" resultType="User">
        select id,name from user where id = 1;
    </select>
</mapper>

namespace就是mapper类的全类名,resultType就是我们前面定义的别名,User就是com.example.domain.User的别名。

作者:Acqierement
来源链接:https://blog.csdn.net/weixin_43094917/article/details/85720969

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。


本文链接:https://www.javaclub.cn/java/69154.html

分享给朋友:

“springboot整合mybatis配置” 的相关文章

Mybatis分页插件PageHelper的使用

Mybatis分页插件PageHelper的使用

开头语 上回书说到:将SpringBoot和持久层框架Mybtais进行简单整合,整合时,使用了Mybatis的分页插件PageHelper,但并未介绍如何使用该分页插件,本次讲解PageHelper的常见的使用方法,请大家提意见 什么是PageHelper 在使用Java语言开发项目...

SpringBoot日志框架

SpringBoot日志框架

概述项目中日志系统是必不可少的的。 目前比较流行的日志框架有log4j、logback等 。可能大家还不知道,这两个框架的作者是同一个人,Logback旨在作为流行的log4j项目的后续版本,从而恢复log4j离开的位置。另外 slf4j(Simple Logging Facade for Java...

SpringCloud基本原理

SpringCloud基本原理 在微服务架构中,需要几个基础的服务治理组件,包括服务注册与发现、服务消费、负载均衡、断路器、智能路由、配置管理等,由这几个基础组件相互协作,共同组建了一个简单的微服务系统。其它几章的介绍是基于SpringCloud基本原理...

小白快速入门|springcloud系列之

小白快速入门|springcloud系列之

目录 一、单体应用 二、架构的演进 三、集群、分布式、微服务的关系及区别 四、springcloud简介 五、总结 摘要:本文主要是对自己学习微服务做一个总结和回顾,如果读者感兴趣的话,希望也能帮助到你。😜...

Spring Boot 2 快速教程:WebFlux 集成 Mongodb(四)

Spring Boot 2 快速教程:WebFlux 集成 Mongodb(四)

摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢! 这是泥瓦匠的第104篇原创 文章工程: * JDK 1.8 * Maven 3.5.2 * Spring Boot 2.1.3.R...

Spring Boot 中如何使用 Dubbo Activate 扩展点

Spring Boot 中如何使用 Dubbo Activate 扩展点

摘要: 原创出处 www.bysocket.com 「泥瓦匠BYSocket 」欢迎转载,保留摘要,谢谢! 『 公司的核心竞争力在于创新 – 《启示录》 』 继续上一篇:《 Springboot 整合 Dubbo/ZooKeeper 》,在...

Springboot 整合 Dubbo/ZooKeeper 详解 SOA 案例

Springboot 整合 Dubbo/ZooKeeper 详解 SOA 案例

摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载,保留摘要,谢谢!...

springboot系列之日志框架(slf4j+logback)

springboot系列之日志框架(slf4j+logback)

一、日志作用及种类 日志框架的作用:是用来记录系统的一些行为的,可以通过日志来发现定位问题,在出现问题之后日志是好的一个帮手。 市面上的日志框架大概有这些:JUL、JCL、Jboss-logging、logback、log4j、log4j2、slf4j....等等。...

Spring5:@Autowired注解、@Resource注解和@Service注解

什么是注解 传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop、事物,这么做有两个缺点: 1、如果所有的内容都配置在.xml文件中,那么.xml文件将会十分庞大;如果按需求分开.xml文件,那么.xml文件又会非常多。总之这将导致配置文件的可读性与...

Error setting property values; nested exception is org.springframework.beans.NotWritablePropertyExce

Error setting property values ; nested exception is org.springframework.beans.NotWritablePropertyException <!-- 添加一个dao类&...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。