基于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、第四章节我们接着学习前后端跨域连接,这样就架起了前后端交互的桥梁。

相关推荐
寒水馨几秒前
macOS下载、安装electron-v43.2.0(附安装包electron-v43.2.0-darwin-arm64.zip)
javascript·macos·electron·node.js·跨平台·桌面应用开发·开源框架
不好听61322 分钟前
React 父子组件通信:从 Todo 应用理解单向数据流
前端·react.js
光影少年25 分钟前
RN 路由栈管理、页面销毁、返回拦截
javascript·react native·react.js
_lucas30 分钟前
做了一个glsl在线调试工具
前端·javascript·three.js
To_OC9 小时前
LC 51 N 皇后:我以为难的是回溯,结果栽在了对角线下标
javascript·算法·leetcode
腻害兔9 小时前
【若依项目-产品经理视角】深度拆解 RuoYi-Vue-Pro 商城模块:从商品管理到交易引擎,50 张表撑起一整套电商系统
java·大数据·vue.js·产品经理·ai编程
不好听6139 小时前
从一行 JSX 到屏幕像素:前端开发者必须懂的浏览器渲染管线
前端
恒拓高科WorkPlus9 小时前
企业级内网即时通讯建设模型:BeeWorks内网IM四层架构
前端
前端小李子10 小时前
前端环境变量裸奔?我用 EnvShield 给它穿了件防弹衣
前端
youtootech10 小时前
HarmonyOS《柚兔学伴》项目实战25-我的页面、Web 嵌入与项目总结
前端·华为·harmonyos