自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (1)
  • 收藏
  • 关注

原创 一个 web版linux、数据库、redis、mongo统一管理操作平台

mayfly-go:一个 web版linux、数据库、redis、mongo统一管理操作平台

2024-01-18 11:12:26 1101

原创 都3202年了,不会还有人硬编码使用枚举值吧?

由于多页面有时需要共同的表单枚举选择,页面以及table需要显示枚举值label以及有时需要根据枚举值进行业务逻辑判断,如果使用硬编码写死每个枚举值的话,则不利于后续的维护...

2023-08-14 09:06:58 167

原创 推荐一个超实用linux、数据库、redis、mongo统一操作平台

超实用web版linux、数据库、redis、mongo统一操作平台

2022-07-15 15:30:09 552 1

原创 vue3通过函数方式调用组件

   由于项目中有个小需求,双击数据库表格数据变为输入框修改or点击选中删除数据后需要弹窗显示要执行的SQL,点击执行后方可修改数据库数据(出于二次确认以及有时是需要把SQL拷贝出来提工单到生产环境执行等)。原本使用的是ElementPlus的ElMessageBox.prompt()函数进行弹框显示sql内容,但是该方式不好控制弹框大小,以及sql关键字美化等。故而就想通过类似的方式实现一个函数来弹出自定义的对话框,对话框内容通过codemirror组件来美化sql内容。   项目地址: https:/

2022-02-10 10:42:23 4986

原创 自荐一个linux,mysql,redis在线管理平台

即是一个再简单的项目往往至少都会涉及linux,mysql,redis等常用基础组件。而日常也是经常需要对这些组件进行在线操作。而每个组件往往都需要一个对应的客户端操作软件。这就需要每个开发测试都需要安装一系列的客户端操作工具,且有些客户端还需要破解等,较为繁琐,且不利于统一管理监控这些资源信息。接下来自荐一个基于golang,vue3开发的一个在线操作管理平台(也可以看做是个堡垒机),当然目前也还有许多功能需要完善。项目地址 https://gitee.com/objs/mayfly-go整体界面

2021-08-31 15:52:43 313

原创 springboot之业务异常堆栈信息优化

  作为javaer都知道spring相关项目大部分情况下都会通过全局捕获异常,并将其包装为更人性化地提示给前端。并且在捕获异常后一般也都会记录到日志里(异常的调用堆栈信息),方便开发排查问题。  这里有个比较明显的问题就是系统中通常会有比较多的业务异常,即如用户不存在,状态不对等等业务异常,如果也记录全部异常堆栈信息,那么个人就觉得有点浪费磁盘空间,且底层框架的堆栈信息对排查问题没有多大指导性意义。如下图(图范围有限,底下还有许多堆栈信息):遂经过调整优化后的spring全局异常处理器之处理业务异常

2021-01-28 14:04:41 1637 2

原创 vue之断言方式校验参数并错误提示

常规操作 async saveSql() { // 如果sql内容为空,则提示并结束执行 if (this.sql === '') { this.$message.error('sql内容不能为空') return } // 如果Id为空,则提示并结束执行 if (!this.dbId) { this.$message.error('请先选择数据库') return } await dbApi.save

2020-12-30 10:34:52 1568

原创 springboot @EnableAutoConfiguration自动配置超详解

springboot相关逻辑1. main启动类首先就是springboot项目习以为常的main方法调用SpringApplication.run将标注有@SpringBootApplication注解的class对象作为参数传递。SpringBootApplication注解是个组合注解,主要组合了@Configuration,@EnableAutoConfiguration,@Import(AutoConfigurationImportSelector.class), @ComponentScan

2020-11-26 16:45:55 1883

原创 基于javax.validation自定义日期范围校验注解

实际项目中经常需要对传入的日期时间进行判断,如是否为一年内,几个月之内,几天前,几天之内等等的需求。如要求前端传入的日期是要为当前日期一年内的某个日期,基于jdk8的LocalDateTime or LocalDate等常用的做法如下: // 前端传字符串如‘2020-07-13 09:09:09’ springmvc接收并转换为LocalDateTime类型 @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH

2020-07-13 10:12:42 8119

原创 Jenkins+Docker+Springboot单机版持续集成部署

Jenkins+Docker+SpringCloud持续集成流程说明安装配置jenkins安装jenkins可直接官网下载对应的jar包直接运行,也可使用docker运行,下载完后直接运行,并下载docker,jdk,maven等,并在jenkins->系统设置->全局工具配置里配置好对应的安装目录等。配置全局凭据及应用服务器SSH如果是使用私有代码仓库以及镜像仓库,则可以在全局配置里添加对应的用户名及密码,以便在jenkins配置脚本里引用。jenkins->凭据-&

2020-07-03 22:51:30 220

原创 java之TreeUtils生成一切对象树形结构

  项目中经常会遇到各种需要以树形结构展示的功能,比较常见的,如菜单树,分类树,部门树等等,如果为每种类型都遍历递归生成树形结构返回给前端,显得有些冗余且麻烦,并且其实逻辑都是一致的,只是遍历的对象不同而已,故其实可以通过面向接口思维,来实现这种通用工具类的实现。TreeNode用来表示每个树节点的抽象,即需要生成树的对象需要实现此接口。 /** * 树节点父类,所有需要使用{@l...

2020-04-02 14:24:00 3570

原创 vue之按钮权限及优雅请求API

系统开发中按钮级权限控制也是非常重要的功能之一,可以严格控制不同角色用户所拥有的功能权限。自定义v-permission指令首先可以通过vue的自定义指令来控制按钮(div,link也阔以)等的显示与否以及是否禁用状态。具体可查看官方文档vue自定义指令。/** * 定义vue permission指令 * * el:指令所绑定的元素,可以用来直接操作 DOM * binding:...

2019-12-23 15:52:05 1082

原创 JVM之内存布局超详细整理

  内存是非常重要的系统资源,是硬盘和CPU的中间仓库及桥梁,承载着操作系统和立用程序的实时运行。JVM内存布局规定了Java在运行过程中内存申请、分配、管理的策略,保证了JVM的高效稳定运行。不同的JVM对于内存的划分方式和管理机制存在着部分差异。结合JVM虚拟机规范,来学习一 下经典的JVM内存布局。  话不多说,先来一图(截图来至阿里的<码出高效:java开发手册>)。上图就...

2019-10-29 17:37:51 932

原创 EnumUtils重构及自定义@EnumValue注解自动校验枚举值

EnumUtils主要功能介绍该简单介绍可看笔者之前文章 java枚举工具类(减少每个枚举中重复的方法)但以上该方式存在一些问题,例如枚举值(value)可能为String也可能为Byte等等,不止只是Integer类型,而且有些枚举可能不需要枚举名称(name)属性,只需要个枚举值value属性即可,以上最简单的实现方式就不支持这些需求了,故通过拆分BaseEnum接口以及增加泛型来支持该要...

2019-09-29 09:51:36 3628

原创 基于断言方式,减少业务逻辑中大量if判断

前言使用过spring全家桶的都应该知道现如今大部分系统对于业务逻辑的异常处理,都是基于springmvc的统一异常处理器进行拦截包装后,返回给前端一个Result(包含code,业务异常msg等消息)结果对象,前端可以根据code以及msg进行友好提示。如下:自定义业务逻辑异常/** * @author meilin.huang * @version 1.0 * @date 20...

2019-08-14 09:56:13 1432 2

原创 Spring组合注解的神奇实用功能详解(功能组合以及别名属性覆盖)

组合注解  注解的作用就不用介绍了吧,主要就是用来简化配置,通过自定义注解或者其他框架提供的注解,只要往方法或者类上一加,就可以实现许多神奇的功能。  spring 4.2之后就提供了组合注解的实现方式,啥是组合注解呢,其实就是将多个注解作用于一个注解,用一个注解就可以来实现那多个注解的功能,使作用的元素(即方法或类等)看上去更简洁美观,当然主要还是更强大的属性覆盖功能。  举个最常见的组合...

2019-06-07 01:02:22 3038 2

原创 Linux systemd替代init进程

从Centos7.0以后,red hat系列的发行版都放弃了使用多年的System V开机启动服务(即init启动脚本的方法)。而使用Systemd这个启动服务管理机制。好处:并行处理所有服务,加速开机流程:旧的init启动脚本是“一项一项任务依序启动”的模式,因此不相依的服务也是得要一个一个的等待,而systemd可以让所有服务同时启动。一经要求就回应的on-demand启动方式:sy...

2019-03-29 14:33:54 1315

原创 java枚举工具类(减少每个枚举中重复的方法)

前言几乎每个系统或多或少都会有些枚举,用来减少硬编码。有时保存数据的时候需要使用下拉框选择枚举,如下图枚举值 1->GET, 2->POST, 3->PUT, 4->DELETE,而传到后端的是value比如选择GET时,传到后端保存的是1这个值,controller接收的就是Integer类型。如上图,后端可定义枚举类MethodEnum/** * @auth...

2019-03-28 16:40:32 1336

原创 Mybatis之通用Mapper(基于mybatis的Provider机制无需第三方插件包)

前言几乎每个系统都需要单表的基础操作(即增删改查分页查询等),如果不使用通用的Mapper则需要每个mapper中都需要实现对应的重复方法,虽然mybatis逆向生成工具会生成对应的.xml文件。里面已经含有一些通用的方法,但是每个实体对应一个.xml文件太复杂。而mybatis也支持注解方式实现sql,使用注解方式实现sql方式,个人感觉更简洁,也符合减少配置文件的趋势。如springboot...

2019-03-27 15:35:38 1678 7

转载 19 个 JavaScript 编码小技巧

转载至 http://www.codeceo.com/article/shorthand-javascript-techniques.html这篇文章适合任何一位基于JavaScript开发的开发者。我写这篇文章主要涉及JavaScript中一些简写的代码,帮助大家更好理解一些JavaScript的基础。希望这些代码能从不同的角度帮助你更好的理解JavaScript。三元操作符如果使用if…...

2019-03-21 09:27:35 152

原创 Linux之文件与目录权限差别

Linux是一个多用户多任务系统。而为了让各个使用者具有较保密的文件数据,因此文件的权限管理就变的很重要了。Linux一般将文件可存取的身份分为三个类别,分别是owner(文件拥有者)/group(群组用户)/others(其他用户),且三种身份各有read/write/execute等权限。[hml@VM_0_10_centos test]$ ls -l总用量 8drwxr-xr-x 2 ...

2019-03-19 14:40:22 1068

原创 java模板字符串优雅解析(占位符解析)

项目中常常需要解析字符串模板,比如user:{userId}:{userType}用于redis的key等,比较常见的做法就是使用String.format方法,但个人感觉那样的模板不够明了,故使用模板解析器可更好地有助于解析此类字符串。可申明一个map用于解析,也可使用对象进行解析,有点类似于js的模板字符串${}/** * 占位符解析器 * * @author meilin.huang...

2019-03-14 19:02:04 9096 5

原创 vue等前端项目枚举值统一维护管理

由于多页面有时需要共同的表单枚举选择,页面以及table需要显示枚举值label以及有时需要根据枚举值判断,故个人使用如下枚举方式进行统一管理。在common或者个人模块下创建单独枚举js,如enums.js。然后导入@/common/Enum.js并添加一个字面量对象。// 落户任务状态settleTaskStatusEnum: new Enum().add('all', '全部', nu...

2019-03-14 18:48:55 6421

Effective java第三版(中文版),包含jdk8和9的新特性建议

effective java第三版(中文版),包含jdk8和9的新特性建议。非常实用

2019-03-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除