当前位置: 首页 > news >正文

Mapper.xml文件解析

Mapper.xml文件解析

简单解读

 最近在做一个分布式项目,看到xml文件原先只是上网CV,还是要搞清楚吧!

  • 下面是一个Mybatis的SQL映射文件的配置

<?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="cn.itedus.lottery.infrastructure.dao.IActivityDao"><resultMap id="activityMap" type="cn.itedus.lottery.infrastructure.po.Activity"><id column="id" property="id"/><result column="activity_id" property="activityId"/><result column="activity_name" property="activityName"/><result column="activity_desc" property="activityDesc"/><result column="begin_date_time" property="beginDateTime"/><result column="end_date_time" property="endDateTime"/><result column="stock_count" property="stockCount"/><result column="take_count" property="takeCount"/><result column="state" property="state"/><result column="creator" property="creator"/><result column="create_time" property="createTime"/><result column="update_time" property="updateTime"/></resultMap><insert id="insert" parameterType="cn.itedus.lottery.infrastructure.po.Activity">INSERT INTO activity(activity_id, activity_name, activity_desc, begin_date_time, end_date_time,stock_count, take_count, state, creator, create_time, update_time)VALUES(#{activityId}, #{activityName}, #{activityDesc}, #{beginDateTime}, #{endDateTime},#{stockCount}, #{takeCount}, #{state}, #{creator}, now(), now())</insert><select id="queryActivityById" parameterType="java.lang.Long" resultMap="activityMap">SELECT activity_id, activity_name, activity_desc, begin_date_time, end_date_time,stock_count, take_count, state, creator, create_time, update_timeFROM activityWHERE activity_id = #{activityId}</select></mapper>
  • 这个元素定义了命名空间,用于标识这个映射文件对应的接口。在这里,命名空间指向了 cn.itedus.lottery.infrastructure.dao.IActivityDao 这个接口,表示这个映射文件用于实现该接口的数据库操作。

<mapper namespace="cn.itedus.lottery.infrastructure.dao.IActivityDao">
  • 这部分定义了一个 resultMap,用于将查询结果映射到 cn.itedus.lottery.infrastructure.po.Activity 实体类的属性。id 元素定义了主键的映射,result 元素定义了其他属性的映射。
    <resultMap id="activityMap" type="cn.itedus.lottery.infrastructure.po.Activity"><!-- 映射实体类的属性与数据库字段 --><id column="id" property="id"/><result column="activity_id" property="activityId"/><result column="activity_name" property="activityName"/><!-- 其他属性映射... --></resultMap>
  • 这部分定义了一个 insert 元素,用于插入一条活动数据。parameterType 属性指定了传入的参数类型,即 cn.itedus.lottery.infrastructure.po.Activity 实体类。
    <insert id="insert" parameterType="cn.itedus.lottery.infrastructure.po.Activity"><!-- 插入活动数据 --></insert>
  • 这部分定义了一个 select 元素,用于根据活动 ID 查询活动数据。parameterType 属性指定了传入的参数类型,resultMap 属性指定了查询结果映射使用的 resultMap。
  • 通过 XML 格式定义了插入和查询操作的 SQL 语句,并通过 resultMap 将查询结果映射到实体类的属性。这样的映射文件使得数据库操作可以使用统一的接口进行,同时将 SQL 语句和实体类属性的映射关系集中管理,提高了代码的维护性和可读性。
<select id="queryActivityById" parameterType="java.lang.Long" resultMap="activityMap"><!-- 查询活动数据 --></select>

相关文章:

Mapper.xml文件解析

Mapper.xml文件解析 简单解读 最近在做一个分布式项目&#xff0c;看到xml文件原先只是上网CV&#xff0c;还是要搞清楚吧&#xff01; 下面是一个Mybatis的SQL映射文件的配置 <?xml version"1.0" encoding"UTF-8"?> <!DOCTYPE mapper PUBLIC…...

ES 7.6 - JAVA应用基础操作篇

ES 7.6 - JAVA应用基础操作篇 环境准备依赖配置 实体类准备使用说明索引/映射操作创建索引和映射索引和映射相关查询删除索引 文档操作插入数据更新数据删除数据批量操作 文档查询根据ID查询根据字段精准查询根据字段分词查询控制返回字段范围查询组合查询排序分页高亮搜索聚合…...

com.squareup.okhttp3:okhttp 组件安全漏洞及健康度分析

组件简介 维护者square组织许可证类型Apache License 2.0首次发布2016 年 1 月 2 日最新发布时间2023 年 4 月 23 日GitHub Star44403GitHub Fork9197依赖包5,582依赖存储库77,217 com.squareup.okhttp3:okhttp 一个开源的 HTTP 客户端库&#xff0c;可以用于 Android 和 Jav…...

【Unity的HDRP渲染管线下用Steam VR串流结合使用遇到的各种问题_SteamVR 插件和Pico串流助手】

用Steam串流VR 背景:1.项目准备:相关文档和社区资源需要下载的工具2.梳理工程渲染设置和场景烘培正确:几个概念的一些说明:1. SteamVR:2. SteamVR插件:3. OpenVR和OpenXR:4. XRI:5. Pico串流助手:6. "Mock Runtime"选项含义SteamVR插件导入配置好SteamVR Came…...

Unity——音乐、音效

在游戏运行的过程中&#xff0c;音效的播放时机与游戏当前内容密切相关&#xff0c;而且随着场景的变化、剧情的推进&#xff0c;背景音乐也需要适时切换&#xff0c;所以恰当地控制音乐和音效的播放非常重要。音乐和音效的播放、停止、切换和音量变化等&#xff0c;都需要由脚…...

Ubuntu 23.10 将首次推出基于 Flutter 的新 Ubuntu 商店

导读Ubuntu 正在升级其软件商店以提供顺滑的体验&#xff01; 随着不断发展&#xff0c;Canonical 似乎全力以赴&#xff0c;将基于 Flutter 的元素整合到 Ubuntu 中。 在前段时间 Ubuntu 23.04 发布后&#xff0c;我们见到了基于 Flutter 的安装程序 &#xff0c;现在&#x…...

linux scatterlist阅读三

sg_copy_buffer 函数定义&#xff1a; /*** sg_copy_buffer - Copy data between a linear buffer and an SG list* sgl: The SG list* nents: Number of SG entries* buf: Where to copy from* buflen: The number of bytes to copy* skip: Number of bytes to sk…...

2023新,centos7安装mysql8.0.25

2023新&#xff0c;centos7安装mysql8.0.25 目录 2023新&#xff0c;centos7安装mysql8.0.251、下载rpm文件2、安装3、配置my.cnf4、启动查看重启服务5、登入mysql并修改密码6、修改可以远程登录 1、下载rpm文件 进入到你想要的文件地址下 wget https://repo.mysql.com//mysq…...

Data Rescue Professional for Mac:专业的数据恢复工具

在数字化时代&#xff0c;我们的生活和工作离不开电脑和存储设备。但是&#xff0c;意外情况时常发生&#xff0c;例如误删除文件、格式化硬盘、病毒攻击等&#xff0c;这些都可能导致重要的数据丢失。面对数据丢失&#xff0c;我们迫切需要一款可靠的数据恢复工具。今天&#…...

新手小白想要做好跨境电商独立站,需要考虑哪些要素?

对于不少中小卖家而言&#xff0c;利用独立站出海已然成为下一个跨境热潮。但是采用独立站模式做出海生意前&#xff0c;卖家需要考虑哪些要素&#xff1f; 产品选择 对于国内的卖家来说&#xff0c;依托于国内强大的供应链优势&#xff0c;只要能把握住消费者心态&#xff0…...

Consul原理介绍

官方文档&#xff1a;https://www.consul.io/docs Raft动画演示&#xff1a;http://thesecretlivesofdata.com/raft/ 注册中心对比 Consul特点 服务发现、健康检查、Key/Value存储、安全服务通信&#xff08;TLS证书&#xff09;、多数据中心 架构 角色 数据中心 数据中心内…...

【C++实战】C++实现贪吃蛇(含源代码)—基于easyx图形库

食用指南&#xff1a;本文在有C基础的情况下食用更佳 &#x1f340;本文前置知识&#xff1a;C基础 ♈️今日夜电波&#xff1a;toge—あよ 0:36 ━━━━━━️&#x1f49f;──────── 4:03 &a…...

PHP获取两个日期之间的所有日期

下面是一个示例代码&#xff0c;用于计算给定开始和结束日期之间的所有日期&#xff1a; <?phpfunction getDatesBetween($start_date, $end_date) {// 初始化结果数组$dates array();// 将开始日期转换为时间戳$current_date strtotime($start_date);$end_date strtot…...

STL之stack(适配器讲解以及双端队列的讲解)

很多人在听到适配器的时候&#xff0c;应该都是懵的&#xff0c;因为对适配器的理解都是懵懵懂懂&#xff0c;其实他很好理解&#xff0c;就是相当于一个转换器。我们可以这样理解&#xff0c;就是现实当中是的插排一样&#xff0c;上面有三个孔的&#xff0c;也有两个孔的&…...

JVM解密: 解构类加载与GC垃圾回收机制

文章目录 一. JVM内存划分二. 类加载机制1. 类加载过程2. 双亲委派模型 三. GC垃圾回收机制1. 找到需要回收的内存1.1 哪些内存需要回收&#xff1f;1.2 基于引用计数找垃圾(Java不采取该方案)1.3 基于可达性分析找垃圾(Java采取方案) 2. 垃圾回收算法2.1 标记-清除算法2.2 标记…...

【Spring Boot】Spring Boot结合MyBatis简单实现学生信息管理模块

实战&#xff1a;实现学生信息管理模块 环境准备 JDKSpring BootMyBatis 创建Spring Boot项目 使用Spring Initializr创建一个新的Spring Boot项目&#xff0c;并添加以下依赖&#xff1a; Spring WebMyBatis FrameworkMySQL Driver 数据库设计 在MySQL数据库中创建一个名…...

【Java List与Map】List<T> Map与Map List<T>的区别(126)

List&#xff1c;T&#xff1e; Map&#xff1a;List里面的数据类型包含Map&#xff1b; Map List&#xff1c;T&#xff1e;&#xff1a;Map里面value的数据类型包含List&#xff1b; 测试案例&#xff1a; import java.util.ArrayList; import java.util.HashMap; import j…...

【FreeRTOS】常用函数总结

xTaskCreate()&#xff1a; 用法&#xff1a; xTaskCreate(taskFunction, taskName, stackSize, parameters, priority, taskHandle)参数&#xff1a; taskFunction&#xff1a;任务函数&#xff0c;即任务的入口函数。taskName&#xff1a;任务的名称。stackSize&#xff1a;任…...

The Cherno——OpenGL

The Cherno——OpenGL 1. 欢迎来到OpenGL OpenGL是一种跨平台的图形接口&#xff08;API&#xff09;&#xff0c;就是一大堆我们能够调用的函数去做一些与图像相关的事情。特殊的是&#xff0c;OpenGL允许我们访问GPU&#xff08;Graphics Processing Unit 图像处理单元&…...

linux中学习控制进程的要点

1. 进程创建 1.1 fork函数 #include <unistd.h> pid_t fork(void); 返回值&#xff1a;自进程中返回0&#xff0c;父进程返回子进程id&#xff0c;出错返回-1 进程调用fork&#xff0c;当控制转移到内核中的fork代码后&#xff0c;内核会做以下操作 分配新的内存块和…...

基于“点击化学”的聚合物荧光标记定制合成

当化学成为“纽带”&#xff1a;基于点击化学的聚合物荧光标记定制合成关于我们的定制在生物医学成像与材料科学的前沿研究中&#xff0c;获得一种既能稳定发光、又能精准标记目标分子的探针&#xff0c;往往是实验成功的关键。我们专注于为客户提供基于点击化学的聚合物荧光标…...

2026年HR推荐的10个专业简历模板网站,从模板到写法

2026年HR推荐的10个专业简历模板网站&#xff0c;从模板到写法写一份让HR眼前一亮的简历&#xff0c;是很多求职者遇到的难题。模板选什么风格、内容怎么写才专业、怎么排版才不会被系统筛掉——这些问题常常让人头疼。这篇文章整理了10个HR推荐的专业简历模板网站&#xff0c;…...

【限时解密】ElevenLabs未开放的客家话语音fine-tuning沙箱环境:如何用不到200条标注语句,在72小时内将模型MOS分从3.1提升至4.4(附私有化微调checklist)

更多请点击&#xff1a; https://codechina.net 第一章&#xff1a;【限时解密】ElevenLabs未开放的客家话语音fine-tuning沙箱环境&#xff1a;如何用不到200条标注语句&#xff0c;在72小时内将模型MOS分从3.1提升至4.4&#xff08;附私有化微调checklist&#xff09; Eleve…...

2026年免费照片去水印软件App排行榜|去水印App推荐和评测指南

照片被水印困扰是很多用户的常见问题。无论是保存网络上的精美图片、处理工作资料&#xff0c;还是制作个人素材库&#xff0c;去水印都是一个实用的需求。本篇文章根据2026年最新的工具体验&#xff0c;为你梳理免费照片去水印软件app有哪些、各类去水印App怎么选择&#xff0…...

0603光刻机 第六篇:EUV超精密光学系统(S级 长期死磕突破)第3小节:超高纯氟化钙材料难点

第六篇&#xff1a;EUV超精密光学系统&#xff08;S级 长期死磕突破&#xff09; 第3小节&#xff1a;超高纯氟化钙材料难点&#xff08;深紫外配套核心&#xff0c;全维度死磕解析&#xff09; 前置硬核声明 氟化钙单晶&#xff08;CaF₂&#xff09;是DUV深紫外光刻核心光学基…...

AI for Science:从数据驱动到科学发现,构建科研新范式

1. 从AlphaFold到GPT-3&#xff1a;AI如何成为科学家的“新感官”如果你是一位从事物理、化学、生物或材料科学的研究者&#xff0c;最近几年可能时常被一种复杂的情绪所包围&#xff1a;一方面是兴奋&#xff0c;看到像AlphaFold2这样的人工智能工具&#xff0c;几乎一夜间解决…...

【2026电赛国奖秘籍】别再用L298N了!无刷电机FOC(位置/速度双环)速成与避坑指南

&#x1f4dd; 前言&#xff1a;为什么电赛控制类一定要懂FOC&#xff1f;参加过电赛控制类&#xff08;如自平衡小车、双轴追光云台、风力摆、倒立摆&#xff09;的同学都知道&#xff0c;传统的“直流有刷电机 L298N/TB6612 增量式编码器”方案在面对极低速运转和精确定位时…...

会计学论文降AI工具怎么选?财务审计方向高效降重指南

又到了毕业答辩的关键期&#xff0c;不少会计专业的同学都在发愁论文AI率不达标&#xff1a;财务分析部分的数据解读、审计研究的案例推导用AI辅助写完&#xff0c;一检测全是高风险&#xff0c;改了好几遍还是过不了学校的审核。我身边不少师弟师妹踩过工具的坑&#xff0c;要…...

UMA Unity角色系统深度解析:运行时人体编译器架构与跨平台实践

1. 为什么UMA不是“装上就能用”的Avatar系统——从三个典型失败案例说起我第一次在项目里引入Unity Multipurpose Avatar&#xff08;UMA&#xff09;时&#xff0c;信心满满地拖进Package Manager&#xff0c;点完Import&#xff0c;打开Demo场景&#xff0c;结果角色模型直接…...

LLaMA论文里没细说的三个‘炼丹’细节:RMSNorm、SwiGLU和RoPE到底怎么用?

LLaMA论文里没细说的三个‘炼丹’细节&#xff1a;RMSNorm、SwiGLU和RoPE到底怎么用&#xff1f; 在构建现代大型语言模型时&#xff0c;论文往往聚焦于宏观架构和性能对比&#xff0c;而将关键实现细节留给读者自行揣摩。LLaMA论文中提到的RMSNorm、SwiGLU和RoPE三项改进&…...