为了方便写CURD代码,我在UTools写了个插件SqlConvert来生成代码!

news2024/9/17 7:35:42

-1. 前言

为了方便摸鱼,我之前写过一个通过sql生成代码的工具,但是服务器到期了,也就懒得重新部署了。
技术框架是 SpringBoot + MybatisPlus + Velocity + Vue + ElementUI

  • Sql-Parsee
  • Sql-Parser-ui

0. Utools应用安装

  1. 官网地址: https://u.tools/
  2. 插件名称: SqlConvert
  3. 如果遇到插件有问题,可以在gitee 提交Issue 或者在utools插件下提交评论

1. 安装运行

  1. 下载项目到本地
git clone git@gitee.com:chargeduck/utools_sql_convert_vue.git
  1. 使用npm运行
npm install
npm run dev
  1. 启动之后访问localhost:5173

2. 在Utools中调试

想要调试插件,需要先安装Utools开发者工具,这个直接在utools的插件应用市场下载就行了

1. 创建插件信息

根据提示,创建自己的插件信息即可

  1. 新建Utools项目

在这里插入图片描述

  1. 填写项目信息

在这里插入图片描述

  1. 选择plugin.json,这个文件的位置在项目目录的utools文件夹下

在这里插入图片描述

2. 调试

1. 实时调试

  1. 进入到项目的utools文件夹下
  2. 修改plugin.json
{
	"main": "http://localhost:5173/index.html",
}
  1. 在刚才选择plugin.json的地方,刷新一下
  2. 输入关键字激活SqlConvert插件, 想要其他的可以在加
{
    "cmds": [
        "sql转换",
        "转换",
        "MybatisLogsFormat",
        "代码生成",
        "Mybatis"
    ]
}
  1. vscode或者WebStorm中更改代码,utools插件内就会自动更新

2. 打包测试

  1. 进入项目根目录

  2. 执行打包命令

npm run build
  1. 将生成的dist目录,移动到utools文件夹下
  2. 修改plugin.json
{
   "main": "dist/index.html", 
}
  1. 刷新utools中的plugin.json

3. 功能说明

使用说明

  • 使用说明
  • MybatisLogFormat

1. 列转in

该功能是最早支持的功能,从Excel或者Navicat等工具中复制查询结果到左侧输入框之中,点击转换就会转换成sql支持的in语句。

  • 列转in语句

在这里插入图片描述

  • 添加括号

在这里插入图片描述

2. 列转foreach

这个功能主要是为了方便书写foreach语句的。

比方说你现在使用mybatis有一个地方需要一个<foreach>语句,需要用三个字段

id,nick_name,user_id

这个时候直接复制到左边,点击转换就能够生成<foreach>语句,

当然也支持只填写一个id匹配需要批量删除的场景

  • 字段转foreach

在这里插入图片描述

  • 批量删除或者只需要一个字段的场景

在这里插入图片描述

3. 批量插入

将表所有的字段填写到左侧,在下方输入表名,选择数据库类型。点击转换即可生成批量插入语句

当前只实现了mysql,.oracle,postgresql

不填写表名会默认生成一个

在这里插入图片描述

4. 批量更新

与上方功能类似,也是将所有的字段输入进入,输入表名,填写主键,选择数据库类型生成

0.0.5版本存在样式错乱问题,待下个版本修复

在这里插入图片描述

5. 代码生成

这个功能比较复杂,暂时还没有完成,想要抢先体验的可以下载仓库代码,按照第一二章节试试

  1. 点击配置 添加配置信息

在这里插入图片描述

  1. 设置自定义的类型映射

在这里插入图片描述

  1. 查看模板

本来准备用velocity模板引擎写呢,后来折腾了一天发现不行,然后就还用前端的EJS

这里更改配置之后,点击保存即可。重置的话会使用我写的一套配置

有一个问题就是我用的vue打包后的文件实现的,然后呢这个玩意我保存到了localStorage里边。utools插件自带的utools.db.get()utools.db.put()这两个方法我不知道怎么用了。有大神可以修改一下

在这里插入图片描述

  1. 使用

sql建表语句粘贴到左侧输入框,选择数据库类型和生成类型,点击生成即可,如果生成失败,建议看看配置里边是否填写了

在这里插入图片描述

6. MybaitsLogFormat

idea里边有一个插件,就是你选中了mybatis打印的日志,然后生成可执行的sql

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1958154.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

达梦数据库归档介绍

一、什么是归档 数据库归档是一种数据管理策略&#xff0c;它涉及将旧的、不经常访问的数据移动到一个单独的存储设备&#xff0c;以便在需要时可以检索&#xff0c;同时保持数据库的性能和效率。 归档的主要目标是为了释放数据库中的空间&#xff0c;以便更有效地利用高性能…

如何用PostMan按照规律进行循环访问接口

①设置动态变量 步骤一: 设置环境变量 1. 创建环境变量集合 在 Postman 左上角选择 "环境"&#xff0c;然后点击 "添加" 来创建一个新的环境变量集合。给它起一个名称&#xff0c;比如 "uploadDemo". 2. 添加初始变量 在新创建的环境变量集…

校车购票小程序的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;学生管理&#xff0c;我的乘车信息管理&#xff0c;车辆信息管理&#xff0c;座位管理&#xff0c;系统管理 微信端账号功能包括&#xff1a;系统首页&#xff0c;车辆信息&#xff0c;我的 开发系统…

electron 主进程和渲染进程

最近在整理electron 相关的项目问题&#xff0c;对自己来说也是温故知新&#xff0c;也希望能对小伙伴们有所帮助&#xff0c;大家共同努力共同进步。加油&#xff01;&#xff01;&#xff01;&#xff01; 虽然最近一年前端大环境不好&#xff0c;但是大家还是要加油鸭&#…

kafka leader选举过程浅析

文章目录 概要核心概念leader选举具体流程小结 概要 kafka我们都知道它是通过副本机制&#xff0c;来支持负载均衡和故障转移等高可用的&#xff0c;那么具体副本的选举过程你了解吗&#xff1f;下面我们一起来学习下吧&#xff01; 核心概念 Controller定义&#xff1a;是特…

Cocos Creator2D游戏开发(7)-飞机大战(5)-让子弹飞

飞机大战(5)-碰撞及积分 参考敌机的生成 子弹由飞机生成,放在player_node节点子弹重复使用,要使用预制体;子弹新增了动画 ①创建一个预制体 命名为playerBullet_prefab ② 双击预制体将bullet1图片拖入预制体 保存,关闭(场景编辑器里面的) ③ 发射子弹 player加入代码 prop…

尚庭公寓(五)

图片上传管理 由于公寓、房间等实体均包含图片信息&#xff0c;所以在新增或修改公寓、房间信息时&#xff0c;需要上传图片&#xff0c;因此我们需要实现一个上传图片的接口。 **1. 图片上传流程** 下图展示了新增房间或公寓时&#xff0c;上传图片的流程。 可以看出图片上传…

翻译: 可视化深度学习神经网络二

并甚至在图像识别之外做各种各样智能的东西也许你也想分解成一些抽象的层 例如句子的分析涉及到把原始的语音提出一些独特的声音构成一些音节再构成词再构成词组以及更为抽象的思想等。 但回到这些实际是怎样工作的把你自己现在就放到这个的情景怎样来设计 如何在让这层中的激励…

阿里云主机 安装RabbitMQ

一、操作系统 用的是Alibaba Cloud Linux release 3 (Soaring Falcon)系统&#xff0c;可以通过命令&#xff1a;lsb_release -a 查看系统信息。 二、安装RabbitMQ RabbitMQ 是基于 Erlang 语言构建的&#xff0c;要安装RabbitMQ&#xff0c;需先安装Erlang环境。通过Erlang V…

SearchGPT:搜索引擎市场的潜在游戏规则改变者

关注公众号网络研究观获取更多内容。 OpenAI最近发布的SearchGPT原型标志着搜索技术领域的重大进展。我一直在等待这一天&#xff0c;任何关注搜索和搜索引擎优化领域的人也是如此。我们有充分的理由相信&#xff0c;这一举措很有可能颠覆长期由谷歌等巨头主导的搜索引擎市场&…

宠物医院预约系统-计算机毕业设计源码60818

目录 摘要 Abstract 第一章 绪论 1.1 选题背景及意义 1.2 国内外研究现状 1.3 研究方法 第二章 相关技术介绍 2.1 MySQL简介 2.2 Java编程语言 2.3 B/S模式 2.4 springboot框架 第三章 宠物医院预约系统 系统分析 3.1 系统目标 3.2 系统可行性分析 3.2.1 技术可行…

链式队列实现

归纳编程学习的感悟, 记录奋斗路上的点滴, 希望能帮到一样刻苦的你! 如有不足欢迎指正! 共同学习交流! 🌎欢迎各位→点赞 👍+ 收藏⭐ + 留言​📝唯有主动付出,才有丰富的果实获得收获! 在计算机科学中,队列是一种先进先出(FIFO, First In First Out)的数据结构…

.NET周刊【7月第4期 2024-07-28】

国内文章 .NET 高性能缓冲队列实现 BufferQueue https://mp.weixin.qq.com/s/fUhJpyPqwcmb3whuV3CDyg BufferQueue 是一个用 .NET 编写的高性能的缓冲队列实现&#xff0c;支持多线程并发操作。 项目地址&#xff1a;https://github.com/eventhorizon-cli/BufferQueue 项目…

Robot Operating System——远程修改日志等级

大纲 日志输出Node修改其他Node日志等级的Node获取日志等级设置日志等级 测试默认等级Debug等级Warn等级Error等级 完整代码 在任何系统中&#xff0c;日志功能的重要性都是不容忽视的。日志功能为开发者、维护者甚至用户提供了一个关键的工具&#xff0c;以监控、理解和调试系…

基于Windows Docker desktop搭建pwn环境

安装虚拟机很重&#xff0c;占空间&#xff0c;影响速度。 今天试了下用Windows下的Docker搭建pwn做题环境&#xff0c;搭配MobaXterm真的很好! 一、Windows下安装Docker desktop 网上参考文章很多&#xff0c;不赘述。 说明&#xff1a;去https://www.docker.com/products/d…

PHP经销商订货管理系统小程序源码

经销商订货管理系统&#xff1a;重塑供应链效率的利器 &#x1f680; 开篇&#xff1a;解锁供应链管理的新纪元 在竞争激烈的商业环境中&#xff0c;经销商作为供应链的关键一环&#xff0c;其订货效率直接影响到整个供应链的流畅度和响应速度。传统的订货方式往往繁琐、易出…

【C++深度探索】深入解析AVL树的底层实现机制

&#x1f525; 个人主页&#xff1a;大耳朵土土垚 &#x1f525; 所属专栏&#xff1a;C从入门至进阶 这里将会不定期更新有关C/C的内容&#xff0c;欢迎大家点赞&#xff0c;收藏&#xff0c;评论&#x1f973;&#x1f973;&#x1f389;&#x1f389;&#x1f389; 前言 AV…

学习大数据DAY26 简单数据清洗练习和 Shell 脚本中的数据库编程

目录 上机练习 14 mysql 命令 sql 语句实现步骤 shell 脚本导入 csv 格式文件到 mysql 数据库 secure-file-priv 特性 把文件拷贝到 mysql 指定目录下 上机练习 15 mysqldump 命令 上机练习 16 上机练习 14 运用上一节课学的 Shell 工具完成 1. 清洗数据《infotest.t…

黑马头条Day12-项目部署_持续集成

一、今日内容介绍 1. 什么是持续集成 持续集成&#xff08;Continuous integration&#xff0c;简称CI&#xff09;&#xff0c;指的是频繁地&#xff08;一天多次&#xff09;将代码集成到主干。 持续集成的组成要素&#xff1a; 一个自动构建过程&#xff0c;从检出代码、…

Markdown 语法大全详解

Markdown 语法大全详解 Markdown是一种轻量级标记语言&#xff0c;排版语法简洁&#xff0c;让人们更多地关注内容本身而非排版。它使用易读易写的纯文本格式编写文档&#xff0c;可与HTML混编&#xff0c;可导出 HTML、PDF 以及本身的 .md 格式的文件。因简洁、高效、易读、易…