用dreamwever做网站,徐州做网站软件,wordpress定义数组,如何获取网站是哪个公司制作SuperHotSwap
插件名称叫做#xff1a;SuperHotSwap#xff08;超级热更新#xff09; 开发初心#xff1a;旨在做出一款最便捷的IDEA热更新插件#xff0c;减少用户操作步骤#xff0c;提供零配置的可视化操作更新。
为什么要写这个插件#xff1a;
每次改一下Mappe…SuperHotSwap
插件名称叫做SuperHotSwap超级热更新 开发初心旨在做出一款最便捷的IDEA热更新插件减少用户操作步骤提供零配置的可视化操作更新。
为什么要写这个插件
每次改一下MapperXML文件都得重启项目动则几分钟效率非常低。现有的MapperXML热更新方式都是引入jar包的方式底层是通过轮询文件修改事件触发相应的更新事件显然会影响项目性能并且和项目强耦合我从21年的时候就学习了热更新这一块的知识之前一直是输入这次终于是输出。
整体架构 项目分为Agent、RPC、Client三个核心模块功能分工明确结构很简单。
Client端负责IDEA页面配置和功能扩展编写在IDEA文件右键添加热更新菜单点击触发文件更新。Agent模块用于与Client端交互通过Attach方法加载到项目中实现操作项目中任何资源等强大功能。RPC模块是支持Client端与Agent端远程调用的轻量级框架Client端通过JDK反射动态代理扫描RPC注解生成代理类通信方式采取Socket对象序列化的方式Agent模块加载后触发运行RPC服务端Socket监听通过SPI反射的方式实现Client与Agent实时通信交互。
开发环境
JDK1.8IDEA2021.3Gradle8.7
支持功能
支持功能是否支持MybatisXML热更新√Class热更新√ 增强功能需安装DCEVM补丁远程项目热更新进行中
使用流程 安装插件 打开IDEA插件市场搜索superHotswap安装
启动项目 安装成功后重启IDEA启动项目后输出Banner表示安装成功
MapperXML热更新 在MapperXML文件下点击File Hot Swap按钮执行热更新指令指令正常输出如下
Java热更新 idea文件自动保存是有延迟的记得先手动ctrls保存一下
视频演示 https://www.bilibili.com/video/BV16z42127Vf/
最后 后续有时间可能也会推出IDEA插件开发的教程目前项目还会继续迭代欢迎广大朋友加入一起开源我相信这个项目相对于CRUD项目更会让面试官眼前一亮。
最后觉得该项目还不错或者能对你有所帮助不凡点个star吧~ Github地址https://github.com/songbiaoself/SuperHotSwap Gitee地址https://gitee.com/song_biao/super-hot-swap 项目中用到的RPC框架地址: https://github.com/songbiaoself/easy-rpc