spring-boot整合mybatis(xml方式)

spring boot整合mybatis的xml方式 1、在pom.xml里面除了引入基本的父工程和starter所生成的依赖外,还需引入如下坐标 <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</... 阅读详情

spring-boot整合mybatis

  1. 引入相关依赖
		<!--mysql驱动-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        
        <!--druid连接池-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.1.10</version>
        </dependency>
        
        <!--mybatis依赖-->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.2</version>
        </dependency>
  1. 创建实体类

1.可以通过手动去创建entity
2.在pycharm中连接数据库,然后反向生成pojo类
在这里插入图片描述

在这里插入图片描述
生成的是实体类如下:

package com.heu.mall.mall_order.entity;
import lombok.Data;
/**
 * @author wsq
 */
@Data
public class Air {
  private Integer id;

  private Integer districId;

  private java.util.Date monitorTime;

  private Integer pm10;

  private Integer pm25;

  private String monitoringStation;

  private java.util.Date lastModifyTime;
}

  1. 构建实体类的mapper接口
package com.heu.mall.mall_order.mapper;
import com.heu.mall.mall_order.entity.Air;
import java.util.List;
/**
 * @author wsq
 */
public interface AirMapper {
    /**
     * 返回所有数据
     * @return
     */
    List<Air> findAll();
}

为了使mybatis能够发现扫描到mapper类,需在根应用上加上MapperScan注解

@SpringBootApplication
// basePackages:mapper接口的包路径
@MapperScan(basePackages = "com.heu.mall.mall_order.mapper")
public class MallOrderApplication {

        public static void main(String[] args) {
            SpringApplication.run(MallOrderApplication.class, args);
        }

}
  1. 创建mapper接口的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对应命名空间-->
<mapper namespace="com.heu.mall.mall_order.mapper.AirMapper">
    <!--resultMap这里使用的是别名的形式,需要设置别名的映射-->
    <select id="findAll" resultType="Air">
        select * from air
    </select>
</mapper>

该步骤中,为了使的我们创建的xml生效,以及解决xml中别名映射、数据库字段转为实体类的驼峰格式属性的问题,我们需要在yml文件中做以下配置:

# mybatis 配置
mybatis:
  # 扫描映射文件
  mapper-locations: classpath:mapper/*.xml
  # 别名扫描的包
  type-aliases-package: com.heu.mall.mall_order.entity
  # mysql中字段是"_"分割,而我们程序中是驼峰的形式
  configuration:
    map-underscore-to-camel-case: true
  1. 测试
    首先,我们需要给项目配置好数据库连接,将如下配置加入application.yml文件中:
# 数据库配置
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://192.168.56.101:3306/mall?serverTimezone=UTC
    type: com.alibaba.druid.pool.DruidDataSource
    username: root
    password: root

然后,针对mapper接口实现单元测试,在spring-boot中我们可以轻松完成单元测试,右键Mapper接口名 -> Go To -> Test,就可以在我们Test包路径下生成对应的测试文件,测试代码如下:

package com.heu.mall.mall_order.mapper;
import com.heu.mall.mall_order.MallOrderApplicationTests;
import com.heu.mall.mall_order.entity.Air;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.List;

// MallOrderApplicationTests 为整个应用的根测试,默认是包级别保护的,所以我们需要将其访问权限修改为public
// public class MallOrderApplicationTests{} 
class AirMapperTest extends MallOrderApplicationTests {
    @Autowired
    private AirMapper airMapper;
    @Test
    public void findAll(){
        List<Air> all = airMapper.findAll();
        for (Air air : all) {
            System.out.println(air);
        }
    }
}
Spring Boot 通过 XML 的方式整合 MyBatis 准备一张user表,有idnameage三个属性,其中id为主键且自增,然后插入三条数据;useridint(11) NOT NULL AUTO_INCREMENT COMMENT ‘主键’,namevarchar(50) DEFAULT NULL COMMENT ‘姓名’,ageint(11) DEFAULT NULL COMMENT ‘年龄’,idINSERT INTO user values (1,“村雨遥”,25);INSERT INTO user values (2,“张三”,26) 阅读详情

相关推荐

Spring boot整合Mybatis三:使用xml配置文件方式实现与数据库交互

Spring boot整合Mybatis二中,我使用注解方式实现了与数据库交互。 先看那一下Spring boot整合Mybatis二中,工程在经过一系列操作后的目录结构和文件,我将在此基础上实现:使用xml配置方式访问数据库的需求: 为了便于与注解方式的类和代码区分对比,我引入一个新的对象:教师类。 1、mysql数据库新建一张教师信息表 teacher: 2、domain文件夹...

aigoV的博客 1507

Springboot 自定义SQL语句 XML方式

后面的路径是实体类的路径 ,id是方法名字,resultType 是返回数据类型的格式,也可以设置返回实体类。3.在ServiceImpI业务类里面调用方法。综合服务官网 (tmxkj.top)2.在Dao接口类中添加调用的方法。

qq_53722480的博客 1007

Python爬取天天基金网历史数据

前言 最近开始学习基金????,感觉需要收集一些数据统计分析才靠谱????毕竟给A股交学费的感觉可不好受???? 网上有很多公开的数据,我这里选择的是天天基金网进行爬取 页面分析 接口我分析过了,有些验证不太好获取数据,所以直接从html提取 在天天基金网中随便选择一款基金,然后点击进入历史数据页面 容易定位出日增长率的css选择器 还有翻页按钮 程序编写 使用selenium打开chrome浏览器进行爬取,全代码如下 from selenium import webdriver from sel

JiajunBernoulli的博客 2952

基于springboot的mybatisxml配置

①:XML映射文件的名称与Mapper接口名称一致,并且将XML文件和Mapper接口放在相同包下(同包同名)③XML映射文件中的sql语句与mapper接口中的方法名一致,并保持返回类型一致。②XML映射文件的namespace属性为Mapper接口全限定名一致。

m0_63002921的博客 393

计算机导论期末知识点及试题总结 [近三万字总结 · 全]

计算机网络:计算机网络是利用通信线路连接起来相互独立的计算机的集合,其主要目的是实现数据通信和资源共享。 计算机病毒:破坏计算机功能或数据,影响计算机使用,并能自我复制的一组计算机指令或程序。 操作系统:操作系统是由程序和数据结构组成的大型系统软件,它负责计算机的全部软硬件的资源分配,调度和管理,控制各类程序的正常执行,并为用户使用计算机提供良好的环境。 高速缓冲储存器(Cache):位于cpu和内存之间的储存器,其特点是速度快,目的是是储存器的速度与cpu的速度相匹配。 总线:若干信号线的集合,是

这个人好有趣....hh 1万+

STM32F103ZET6【标准库函数开发】------04五个串口配置实战:从零到一构建多串口通信系统

本文详细介绍了STM32F103ZET6标准库函数开发中五个串口(USART/UART)的配置实战,从硬件引脚识别、时钟树配置到多串口系统整合技巧。通过具体代码示例和调试经验,帮助开发者快速构建稳定的多串口通信系统,适用于工业控制、物联网网关等应用场景。

weixin_29188997的博客 347

SpringBoot整合Mybatis(XML版)

SpringBoot整合Mybaits 注意Mybatis的版本,高版本可能没有Maper注解 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.o

qq_19286785的博客 1523

[AXI]AXI3、AXI4 和 AXI5 的详细差异对比

AXI协议演进对比与AXI5原子操作应用 摘要:ARM的AXI总线协议从AXI3(AMBA3.0)到AXI5(AMBA5.0)持续演进。AXI4(2010)在AXI3基础上新增AXI4-Lite/Stream子协议,扩展事务ID至8位,突发长度增至256,并引入QoS和TrustZone支持。AXI5(2019)进一步强化,新增原子操作(如CAS)、增强安全机制,优化多核场景下的数据一致性。原子操作在多核同步、AI训练、汽车ADAS等场景发挥关键作用,通过无锁机制提升并发性能。验证时需重点测试并发访问下的数

元直的博客 2990

【Spring Boot整合MyBatis教程】

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。

qq_43884946的博客 7576

18、动态系统响应分析

本文系统地介绍了动态系统响应的分析方法,涵盖传递函数建模、特殊输入下的响应特性(如脉冲和阶跃响应)、终值与初值定理的应用、系统直流增益的计算,并深入探讨了一阶和二阶系统的时域特性。通过实例分析与MATLAB仿真,展示了不同参数对系统行为的影响。文章还总结了系统响应在控制设计与故障诊断中的实际应用,并展望了多变量、非线性及实时响应分析的未来研究方向。配合流程图,提供了清晰的系统分析与设计路径。

kite3的博客 144

基于AI的智能开发环境—Trae在Web开发中的应用实战与性能评估【Trae项目实战】

Trae 是一款与 AI 深度集成的开发工具,提供智能问答、代码自动补全和基于 Agent 的 AI 自动编程能力,极大提升开发效率。它具备完备的 IDE 功能,如代码编写、项目管理和源代码管理等,同时还具备强大的 AI 助手,能够提供智能问答、实时代码建议、代码片段生成等服务。开发者可以通过自然语言与 AI 协作,从 0 到 1 开发项目,AI 会根据需求自动生成代码或创建文件。

一键难忘的博客 3万+

在springboot中,利用xml配置mybatis的方法

2. 在resource目录下,创建mybatis的配置文件mybatis-config.xml和映射文件目录mapper,之后的各类映射文件都放在里面。注意,application.yml和mybatis-config.xml中都要配置数据库(驱动、url等)3. 在application.yml文件中配置如下信息。但按照博客中的关键代码和步骤创建的项目无法启动。因此经过参考其他资料,尝试出了不会报错的步骤。成功查出需要的数据库内容。1. 创建springboot工程。这个是避免报错的措施。

qq_53336526的博客 3452

结构优化软件:OptiStruct_(11).拓扑优化

在OptiStruct中,设计空间可以通过定义设计区域来实现。设计区域是结构中可以进行材料变化的部分。几何区域:通过几何选择工具选择特定的区域。网格区域:通过网格选择工具选择特定的单元。假设我们有一个简单的梁结构模型,网格文件为beam.fem。我们希望在梁的中部进行拓扑优化,以减轻重量并保持刚度。

kkchenjj的博客 1374

Java面试-Spring Boot 整合 MyBatis:XML 与 注解方式

《Java面试200问:Spring Boot整合MyBatis全解析》 本文系统讲解了Spring Boot整合MyBatis的两种核心方式:XML配置与注解开发。通过对比分析两种方式的优劣势,配以10000+字的详细指南、丰富代码示例和直观图解,帮助开发者全面掌握MyBatis在Spring Boot项目中的应用。 文章亮点: 深入对比XML与注解方式的适用场景 详细的环境搭建与配置指南 包含动态SQL、分页等高级用法 完整用户管理系统实战案例 高频面试问题全解析 适合人群:准备Java面试的开发者、需

千淘万漉虽辛苦,吹尽狂沙始到金 2万+

eye-in-hand手眼标定系统

上一个博文说了一种手眼标定系统的特殊情况,就是相机随着机械手一起移动的情况。虽然前面简单介绍了一种办法,就是内次拍照时让相机回到之前标定的位置,但是这样处理机器人的工作效率就会大大降低,产生很多重复动作,所以这篇博文就来讲一种更简单的标定方案。 下面是halcon官方给的手眼标定系统的案例代码。 这个例子主要应用于相机固定在机械手末端的手眼系统中,而且标定板相对于机器人也是静止的。 在这...

二毛的博客 1万+

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Spring boot整合MyBatis-Flex实现查询、更新、新增、删除以及分页的注解与XML方式教程

阐述了在Spring Boot项目中整合MyBatis-Flex的过程,旨在实现高效、灵活的数据库操作。首先,通过添加MyBatis-Flex、MySQL驱动和Druid数据源等依赖,构建起项目的基础环境。接着,配置了Druid数据源,优化了数据库连接管理。在创建好用户表后,设计了对应的Java实体类,确保与数据库表结构的完美映射。随后,定义了Mapper接口,使用MyBatis-Flex的注解来实现增删改查操作,并通过测试类验证了功能的正确性。

qq_27628229的博客 5031

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

spring boot 整合mybatis—xml方式和注解方式

一、简述 SpringBoot有两种方法与数据库建立连接,一种是集成Mybatis,另一种用JdbcTemplate,本文主要讨论集成Mybatis方式。   SpringBoot整合Mybatis也有两种方式,分别为XML配置方式和注解方式,主要优势点如下:    - XML配置方式:隔离sql和业务代码,清晰表达sql,尤其对于较长的sql。 注解方式:代码更加精简,方便。 二、xml方式整合 三、注解方式整合 ...

weixin_45769285的博客 613

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Java学习 - Spring Boot XML 方式整合 MyBatis 实例

今天我们就来看看,如何利用 XML 文件的方式来将两者整合起来!下图是整个整合过程,接下来开始整合。以上就是通过 XMl 文件来整合 Spring Boot 和 MyBatis 的具体过程了,是不是很简单呢?对比 XML 文件和注解的方式,最大的不同就在于 DAO 层。前者是通过 XML 配置文件的方式,而后者则是使用 MyBatis 中所提供的注解来实现。两种方式各有优劣,而且大家也都有使用,不过貌似大家使用的更多的还是 XML 配置的方式。那么如果是你的话,你会使用哪种方式呢?

paofuluolijiang的博客 1201

Spring Boot中整合MyBatis(基于xml方式&基于注解实现方式)

Druid依赖:Druid是一个强大的数据库连接池和监控工具,如果你希望使用Druid作为连接池,需要导入Druid的依赖。JDBC依赖:Spring Boot中已经包含了JDBC的依赖,不需要额外导入。在Spring Boot中整合MyBatis时,你需要导入JDBC和Druid的相关依赖。这两个依赖都包含了JDBC相关的库。SpringBoot整合JDBC--->SpringBoot整合Druid ------>

· 2826

spring boot整合mybatis 实现xml方式增删改查

spring boot整合mybatis 实现xml方式增删改查 spring boot 2.x 这里以user表为例子 sql结构 CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8; pom文件 &l

zgc55987的博客 1443

Spring boot整合MyBatis-Flex实现查询、更新、新增、删除以及分页的注解与XML方式

test-while-idle: true # 申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。time-between-eviction-runs-millis: 60000 # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位毫秒。max-pool-prepared-statement-per-connection-size: 20 # 每个连接上PSCache的大小。

2301_82323116的博客 1210

spring boot 整合Mybatis基于注解和XML的二种方式的最简案例

地址出处:http://www.ityouknow.com/springboot/2016/11/06/spring-boo-mybatis.html 这两天启动了一个新项目因为项目组成员一直都使用的是mybatis,虽然个人比较喜欢jpa这种极简的模式,但是为了项目保持统一性技术选型还是定了 mybatis。到网上找了一下关于spring boot和mybatis组合的相关资料,各种各样的形式...

zhangxiaoxiao9527的博客 278

spring boot笔记5——Spring boot全局异常处理、Springboot整合jsp、Springboot整合mybatis(xml配置方式)

一、spring boot全局异常处理 通知机制   @ControllerAdvice     输入url测试,这样就可以处理各种报错信息了: 二、Springboot整合jsp spring boot当然不推荐jsp,现在jsp的模式已经渐渐式微啦,现在了解一下这个东西的机制还是可以的,毕竟几年前的项目基本上都用的jsp,但是呢,由于jsp对html的支持不是非常完美,尤其现在...

苏云南雁的博客 671

c#通过linq方式加载xml_SpringBoot 通过 XML 的方式整合 MyBatis

1. 前言本篇博客主要利用 SpringBoot 通过 XML 的方式整合 Mybatis,所有涉及的代码已经上传 Github mybatis-xml。下面是整个整合过程,接下来开始整合:2. 整合过程最终项目结构如下图所示:2.1 新建 Spring Boot 项目新建一个 Spring Boot 项目,添加 Web 组件,具体过程可以参照我的另一篇博客 创建 Spring Boot 项目的...

weixin_39790528的博客 313

springboot干货——(六)springboot整合mybatis(两种方式)

本博客中介绍了两种整合方式,分别是xml配置和注解 依赖 &lt;dependency&gt; &lt;groupId&gt;mysql&lt;/groupId&gt; &lt;artifactId&gt;mysql-connector-java&lt;/artifactId&gt; &lt;scope&gt...

东天里的冬天 2万+
上一篇: Spring-boot基础配置
下一篇: 941. 有效的山脉数组
Lazy mode
博客等级 码龄10年 13粉丝 311原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值