MyBatis笔记03------XXXMapper.xml文件解析
SQL映射文件的配置解析
当我们写好mapper(dao)层接口时,然后在对应的XXXMapper.xml文件中写业务逻辑对应的SQL映射语句,通过这个文件中可以实现CRU操作,那么下面说明如何编写这个.xml文件。
一、.xml文件的内容
1、头文件内容(固定)
<?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">
2、简单的CRUD操作
<mapper namespace="com.dao.StuMapper">
<select id="queryAll" resultType="stu">
<!--查询-->
select * from stu;
</select>
<select id="queryByKey" parameterType="int" resultType="com.pojo.Stu">
<!--in根据主键查询-->
select * from stu where sno=#{sno};
</select>
<insert id="insert" parameterType="com.pojo.Stu">
<!--增加-->
insert into stu value(#{sno},#{sname},#{sage},#{saddress},#{spwd});
</insert>
<update id="upd" parameterType="com.pojo.Stu">
<!--更新-->
update stu set sname=#{sname},sage=#{sage},saddress=#{saddress},spwd=#{spwd}
where sno=#{sno};
</update>
<delete id="del" parameterType="int">
<!--删除-->
delete from stu where sno=#{sno};
</delete>
</mapper>
显而易见:1、配置SQL映射语句,首先使用<mapper>标签,其中namespace属性代表命名,它的属性值是.xml文件对应的XXXMapper(dao)
接口的完整包名接口名
2、<select>标签:实现查询功能 <update>标签: 实现更新功能
<insert>标签: 实现插入功能 <delete>标签; 实现删除功能
二、select、insert、update、delete标签的配置
1、这四个标签是完成CRUD操作的
2、这四个标签主要都有id属性,paramType属性,resultType属性(这三个属性常用)
id属性:属性值是对应的XXXMapper接口中的方法名,属性值一定要与方法名一模一样!!!是必须写的
paramType属性:属性值是对应的XXXMapper接口中方法对应的参数类型,当接口中的方法的参数是Map集合,那么它的属性值是map(小写的)
resultType属性: 属性值是对应的XXXMapper接口中方法的返回类型
注意:在MyBatis中开启了事务,但是自动提交事务默认为false,所以我们需要手动提交事务,这样对应的操作才会对数据库生效!!!所以像增加、更新、删除操作都需要手动提交事务
手动提交事务:sqlSession.commit();//sqlSession是一个引用,是连接数据库的对象
开启提交事务默认为true:sqlSessionFactory.openSession(true);//sqlSessionFactory是一个引用,是SqlSessionFactory的对象,
MyBatis笔记03------XXXMapper.xml文件解析的更多相关文章
- Android学习笔记之AndroidManifest.xml文件解析(转)
//自已备注: <?xml version="1.0" encoding="utf-8"?>//说明了版本号,字符集 <manifest xm ...
- Android学习笔记之AndroidManifest.xml文件解析
一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它位于整个项目的根目录,描述了package中暴露的组件(activiti ...
- Android学习笔记之AndroidManifest.xml文件解析(详解)
一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它位于整个项目的根目录,描述了package中暴露的组件(activiti ...
- android基础知识13:AndroidManifest.xml文件解析
注:本文转载于:http://blog.csdn.net/xianming01/article/details/7526987 AndroidManifest.xml文件解析. 1.重要性 Andro ...
- Android之AndroidManifest.xml文件解析
转自:Android学习笔记之AndroidManifest.xml文件解析 一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文 ...
- MyBatis 源码分析 - 映射文件解析过程
1.简介 在上一篇文章中,我详细分析了 MyBatis 配置文件的解析过程.由于上一篇文章的篇幅比较大,加之映射文件解析过程也比较复杂的原因.所以我将映射文件解析过程的分析内容从上一篇文章中抽取出来, ...
- 通过正则表达式实现简单xml文件解析
这是我通过正则表达式实现的xml文件解析工具,有些XHTML文件中包含特殊符号,暂时还无法正常使用. 设计思路:常见的xml文件都是单根树结构,工具的目的是通过递归的方式将整个文档树装载进一个Node ...
- 八、Android学习第七天——XML文件解析方法(转)
(转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 八.Android学习第七天——XML文件解析方法 XML文件:exten ...
- 9.XML文件解析
一.XML简介 XML(EXtensible Markup Language),可扩展标记语言 特点:XML与操作系统.编程语言的开发平台无关 实现不同系统之间的数据交换 作用:数据交互 配置应用程序 ...
随机推荐
- Excel 统计函数(二):COUNTIF 和 COUNTIFS
COUNTIF [语法]COUNTIF(range, criteria) [作用]range 为统计的范围,criteria 是统计的条件. [题目]统计 A1 到 A10 范围内,出现"你 ...
- 如何给load average 退烧
故障现象:top - 14:02:56 up 250 days, 18:33, 7 users, load average: 142.92, 142.85, 142.80Tasks: 731 tota ...
- MySQL索引知识点&面试常见问题
来源:BiggerBoy 作者:北哥 原文链接:https://mp.weixin.qq.com/s/fucHvdRK5wRrDfBOo6IBGw 大家好我是北哥,今天整理了MySQL索引相关的知识点 ...
- 业务流程可视化-让你的流程图"Run"起来(7.运行状态持久化&轻量工作流支持)
前言 感谢大家阅读本项目系列文章和对项目的支持.分享一下我对这个项目的新的改进. 之前项目做到了流程设计可视化和流程运行结果可视化. 本期发布的版本中实现了中间的运行过程的实时可视化,和流程状态持久化 ...
- SpringCache的基本使用
SpringCache SpringCache是一个框架,实现了基于注解的缓存功能.SpringCache提供了一层抽象,底层可以切换不同的cache实现.具体是通过CacheManager接口来统一 ...
- 字节微服务HTTP框架Hertz使用与源码分析|拥抱开源
一.前言 Hertz[həːts] 是一个 Golang 微服务 HTTP 框架,在设计之初参考了其他开源框架 fasthttp.gin.echo 的优势, 并结合字节跳动内部的需求,使其具有高易用性 ...
- 记pyautogui使用方法
记录学习过程,本人喜欢简洁不啰嗦: 控制鼠标 1 pyautogui.moveTo(w - 100, h - 100, duration=0.25) # 立即移动到指定x, y位置坐标, durati ...
- 【短道速滑九】仿halcon中gauss_filter小半径高斯模糊优化的实现
通常,我们谈的高斯模糊,都知道其是可以行列分离的算法,现在也有着各种优化算法实现,而且其速度基本是和参数大小无关的.但是,在我们实际的应用中,我们可能会发现,有至少50%以上的场景中,我们并不需要大半 ...
- Sentinel 源码分析- 熔断降级原理分析
直接从Sentinel 源码demo ExceptionRatioCircuitBreakerDemo看起 直接看他的main函数 public static void main(String[] a ...
- CMU 15-445 Project 0 实现字典树
原文链接:https://juejin.cn/post/7139572163371073543 项目准备 代码.手册 本文对应 2022 年的课程,Project 0 已经更新为实现字典树了.C++1 ...