基于SpringBoot+Vue+ElementUI+Mybatis前后端分离管理系统超详细教程(三)

拓展学习------用XML方式写动态SQL实现数据库更新操作

前情回顾

前一章节我们学习了使用注解方式实现后端数据库增删改查操作

基于SpringBoot+Vue+ElementUI+Mybatis前后端分离管理系统超详细教程(二)

本节课程接着拓展一下用xml配置文件方式来实现对 数据库更新操作,其他增删查操作同理。


目录

拓展---学习用XML方式写动态SQL实现数据库更新操作

前情回顾

一、准备工作

1、先把MyBatisX插件安装好

2、如下图在mapper包下创建User.xml文件

3、在.xml文件中添加如下代码

3.1命名空间后名字的获得办法:

4、然后我们接着在标签中添加SQL语句

4.1、这里由于版本和idea的语法检查规则,我的表名爆红,

4.2、解决办法:把数据库添加到idea里面:

4.2.1、先去yml文件里把这串路径复制一下

4.2.2、再按下图步骤操作

4.2.3、粘贴

4.2.4、显示连接成功画面:​编辑

[4.2.5、 点击刷新按钮](#4.2.5、 点击刷新按钮)

5、注释UserMapper中的sql语句

二、postman测试

1、点击运行,启动项目

2、打开postman测试

3、输入访问路由,添加json语句,

4、点击send,返回影响行数

三、总结


一、准备工作

1、先把MyBatisX插件安装好

2、如下图在mapper包下创建User.xml文件

3、在.xml文件中添加如下代码

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">
<!--namespace指向mapper.xml对应的Mapper接口文件,根据个人项目修改成自己的名字-->
<mapper namespace="com.xrk.ejobback.mapper.UserMapper">
</mapper>

3.1命名空间后名字的获得办法:

(1)按照下图步骤复制路径

(2)复制好的路径粘贴在如下图红线的引号里:

4、然后我们接着在<mapper></mapper>标签中添加SQL语句

sql 复制代码
    <update id="update">
        update sys_user
        <set><!--这里我们做这样的判断,主要是为了实现不将原有的数据置空,非必须项-->
            <if test="username !=null ">
                username=#{username},
            </if>
            <!--一般情况password不能修改,修改密码通常单独拉出来做一个业务-->
            <if test="password !=null ">
                password=#{password},
            </if>
            <if test="nickname !=null ">
                nickname=#{nickname},
            </if>
            <if test="email !=null ">
                email=#{email},
            </if>
            <if test="phone !=null ">
                phone=#{phone},
            </if>
            <if test="address !=null ">
                address=#{address}
            </if>
        </set>
        <where>
            id=#{id}
        </where>
    </update>

4.1、表名爆红

这里由于版本和idea的语法检查规则,我的表名爆红;

4.2、解决办法

把数据库添加到idea里面:

4.2.1、先去yml文件里把这串路径复制一下
4.2.2、再按下图步骤操作
4.2.3、粘贴

把刚刚复制的路径粘贴在圈1的位置,圈儿2是自己的数据库账号密码,圈3自定义名字,填好了先点击圈4,看到步骤4.2.4中的窗口再点击圈5、6。

4.2.4、显示连接成功画面:
4.2.5、 点击刷新按钮

可以看到xml文件中爆红和警告全部消失

5、注释掉UserMapper中的sql语句(或者删除)

二、postman测试

1、点击运行,启动项目

2、打开postman测试

3、输入访问路由,添加json语句,

4、点击send,返回影响行数

证明我们的Xml配置生效

5、再查看数据库数据:也被修改成功


三、总结

经过前面几个章节的学习我们掌握了:

1、如何使用Vue快速搭建前台工程化项目,并结合elementUI优化了界面;

2、还学会了使用注解、xml配置两种方式对后端进行数据库CRUD操作;

3、第四章节我们接着学习前后端跨域连接,这样就架起了前后端交互的桥梁。

相关推荐
吴声子夜歌几秒前
JavaScript——数据类型
开发语言·javascript·ecmascript
Luna-player几秒前
Vue3中使用vue-awesome-swiper
前端·vue.js·arcgis
SuperEugene5 分钟前
Vue3 Pinia 状态管理规范:状态拆分、Actions 写法、持久化实战,避坑状态污染|状态管理与路由规范篇
前端·javascript·vue.js·前端框架·pinia
black方块cxy5 分钟前
实现一个输入框多个ip以逗号分隔最多20组,且ip不能重复
java·服务器·前端
@PHARAOH20 分钟前
WHAT - AI 时代下的候选人
大数据·前端·人工智能
竹林8181 小时前
从零到一:我在Solana NFT铸造前端中搞定@solana/web3.js连接与交易
前端·javascript
猪八宅百炼成仙1 小时前
不用点击也能预览图片:Element UI ImageViewer 命令式调用方案
前端
尘世中一位迷途小书童1 小时前
前端工程化基石:package.json 40+ 字段逐一拆解
前端·javascript·架构
OpenTiny社区1 小时前
WebMCP + WebSkills:企业级智能化页面操控方案,兼顾隐私安全与高效落地!
前端·ai编程·mcp
酉鬼女又兒1 小时前
零基础快速入门前端JavaScript四大核心内置对象:Math、Date、String、Array全解析(可用于备赛蓝桥杯Web应用开发)
前端·javascript·css·蓝桥杯·前端框架·js