自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

wangbing1125的博客

专注企业信息化领域

  • 博客(378)
  • 收藏
  • 关注

原创 平台介绍-开放API后台微服务

由于平台的数据库是分布的(一般按业务进行分布,例如OA的、人力资源的),加上一个微服务对应一个数据库的默认限制,决定了开放API后台微服务也是多个。从策略上,可以把开放API服务和内部微服务合二为一,即对外系统提供开放API服务,又对内提供业务调用服务。平台不推荐这个方式,正规做法还是让其他系统统一访问网关,通过访问路由到具体开放API服务。这样也会带来另一个好处,就是API服务也可以根据访问量的不同,启动多个服务。其次,从安全角度,对内服务的服务内容更多,开放API一般服务有限,不易混在一起。

2026-01-10 17:50:23 212

原创 平台介绍-接口全解

为了做项目方便,平台统一提供了一些常见系统接口包,通过Maven引入系统后,调用其中的函数完成接口服务。其他系统访问平台需要调用OpenAPI规范,OpenAPI规范和1.1和1.2不同,是给其他系统用的,权限、安全控制不一样。尽管非常推崇统一平台的理念,但是现实场景中,不得不异构平台并存。平台上应用需要调用其他系统时,就需要遵循其他系统的规范。由千里马平台定义的接口,无论是平台本身,还是平台上应用都是千里平台接口。遵循平台定义的规范,可详见接口定义规范。无论接口是什么,都通过统一定义的DTO来传递参数。

2026-01-10 11:24:01 157

原创 redis的存储问题

数据安全性更高(可配置appendfsync always实时写入,或everysec每秒写入),但文件体积可能更大,恢复速度比 RDB 稍慢。以日志的形式记录 Redis 的每一条写命令(比如set key value),重启时通过重新执行这些命令恢复数据。重启会优先加载 AOF 文件(因为 AOF 的数据更完整),恢复所有记录的写操作数据。性能高(fork 子进程写入,不阻塞主进程),但可能丢失最后一次快照到重启前的数据。在指定的时间间隔内,将内存中的数据集快照写入磁盘rdb文件。

2026-01-06 21:27:38 472

原创 serialVersionUID

serialVersionUID是序列和反序列中的一个核心属性,其用途是:在 Java 对象的序列化和反序列化过程中,作为序列化类的 “版本唯一标识”,用于验证序列化的对象(字节流)和对应的目标类是否为 “兼容版本”,从而避免因类结构微小变更导致的反序列化失败。1、序列化时:当对象被序列化时,JVM 会将该类的serialVersionUID(显式声明或默认生成)一起写入到字节流(文件、网络传输数据等)中。1. 隐式生成(JVM 自动生成,不推荐)。:这是 Java 序列化机制要求的固定修饰符组合,其中。

2026-01-02 10:20:28 130

原创 代理与反向代理

IT世界的梦幻就在名词特别多,好在中文的强大,不用造字。从这个角度在专业发展方面,中国人要厉害的多,因为转行容易,没那么多壁垒。拿秘书做类别,你自己的秘书就是代理,有事你找自己的秘书。跟你合作的隔壁王总的秘书就是代理秘书,你不能直接找王总,只能先找他的秘书,对你来说就是代理秘书。这两个概念经常出现,小伙伴都比较疑惑,站在客户端角度,没区别,本质都是不让直接访问服务器,搞了个中间商。关键是中间商是谁的人。反向代理是服务器厂商的人,是服务器厂商架设的服务器。代理干的活一样,都是转发,但是身份目的不同。

2026-01-01 17:35:02 160

原创 平台介绍-动态更换登录背景图

2、后台根据页面传递的参数,首先是设备类型,平台支持电脑、手机、平板,登录图片规格是不一样的。@Column(name = "BEGIN_DATE",length =40) // 适合开始时间 格式可以是yyyy-MM-dd 也可以是MM-dd。@Column(name = "END_DATE",length =40 ) // 适合开始时间 格式可以是yyyy-MM-dd 也可以是MM-dd。@Column(name = "IMG_CENTER",length =100 ) // 中间图片。

2025-12-27 07:17:58 282

原创 开发指南140-VUE项目打包设置

前端项目都会面对这样一个问题:客户的浏览器会缓存代码。更新服务器后,客户的浏览器执行的还是过去的老代码。这个时候只能ctrl+f5强制刷新代码,或者删除浏览器缓存。这个问题可以通过配置打包方式来解决:它的核心原理是打包时生成随机文件名,这样浏览器缓存就失效了,只能更新新代码。这里有个关键点,在开发环境中是没有contenthash的,只能用hash,所以代码里通过mode进行判断。// 给输出的JS/CSS添加内容哈希。如果打出的包长这个样子就对了。

2025-12-21 15:32:22 342

原创 修改文档、源代码的修改时间

pywintypes.Time支持接收时间元组(年、月、日、时、分、秒、周几、一年第几天、夏令时)print(f"成功修改文件 {filePath} 的修改时间为:{targetTime}")None, # 最后访问时间(None表示保持原时间)None, # 创建时间(None表示保持原时间)# 设置文件时间(创建时间、最后访问时间、最后修改时间)targetTime: 目标时间(datetime对象)targetTime: 目标时间(datetime对象)# 批量修改(包含子目录)

2025-12-15 07:29:36 396

原创 将swagger在线文档转为word

doc.add_paragraph(f"描述:{openapi_data['info'].get('description', '无')}")doc.add_paragraph(f"接口描述:{details.get('description', '无')}")doc.add_paragraph(f"接口摘要:{details.get('summary', '无')}")doc.add_paragraph(f"服务器地址:{openapi_data['servers'][0]['url']}")

2025-12-14 10:26:49 560

原创 开发指南145-多选机构树的行为规定

1、勾选A 则A1 A2 A3 及其已经加载下属都会勾选(如果分层加载,点A1,展开A1的下属都必须 是勾选状态。但是这时,机构树返回。解释返回节点的业务逻辑也遵循如下原则,返回的节点默认包含其所有下级,但是返回数据里并没有其下级数据(这样做是为了减少返回数据数量)4、并行选择的节点,则返回所有信息。但是每个并行节点也要遵循如果所有子节点勾选,就只返回自己的约定。3、下级节点只要有一个不是勾选状态,上级就不是勾选状态。如果手动填满下级,上级自动勾选。2、勾掉A,则取消所有下级及其所有下属。

2025-12-06 10:11:00 132

原创 layer.open打开的jsf页面刷新问题

h:commandButton value="保存" styleClass="button01" onclick="return forSave()" action="#{emp_PersonSortBB.saveSort}"/>父页面使用layer.open打开jsf页面,点击页面上保存后,要求完成后台业务后,关闭jsf页面,然后刷新父页面。后台可以通过session变量传递参数给SucceedLayuiClose.jsp页面,控制页面行为。saveSort完成业务后return "success"

2025-12-04 21:30:01 188

原创 各数据库查询表字段语句

is_nullable, -- 是否允许NULL。-- 按字段顺序排列。SHOW COLUMNS FROM 数据库名.表名;data_type, -- 字段类型。column_name, -- 字段名。column_default -- 默认值。TABLE_NAME = '表名'exec sp_columns '表名'AND OWNER = '用户'

2025-12-04 07:43:03 143

原创 fastjson的toJSONString潜在问题

公司同事最近项目上遇到一个问题,一个同步数据的接口存在这样的一个现象,上游某个字段新增数据,更新数据,下游系统都能通过接口正确更新。唯独当数据清空时,下游数据却保持不变。上下游通过restful接口进行数据同步,传递数据的格式为json。找到问题就好处理了,问题就是如何让toJSONString函数不要忽略null的属性。处理json使用的com.alibaba.fastjson。经仔细分析包,发现核心是。

2025-11-20 20:33:45 231

原创 关联表赋值

通过ID关联,使得A表的A1,A2,A3分别等于B1,B2,B3。表A 字段ID A1,A2,A3。表B 字段ID B1,B2,B3。

2025-11-17 16:46:57 130

原创 flex:1

flex: initial:默认值,等价于 flex: 0 1 auto(不扩展,允许收缩,初始大小为内容宽度)。flex: none:等价于 flex: 0 0 auto(既不扩展也不收缩,固定为内容宽度)。flex: auto:等价于 flex: 1 1 auto(扩展和收缩,初始大小为内容宽度)。flex-shrink: 1 - 元素可以缩小,适应空间不足的情况。flex-grow: 1 - 元素可以放大,占据剩余空间。flex-basis: 0% - 元素的基准尺寸为 0%

2025-11-13 00:01:54 232

原创 layui表格数据居右

网上查到的是上述方法,看起来也是对的。真正试一试才发现这样做,表格标题也居右了。layui设计这个align属性毫无用途。因为标题应该居中,这里只控制数据才对。

2025-11-09 22:12:30 145

原创 layui窗口标题

公司有个老系统是基于layui开发的,layui是vue,react之前一代比较火的框架之一。], // [标题文本, 标题栏样式]可以利用html语法进行各种修饰,如改颜色,加图标等。layer.title('动态标题', index);title: false, // 不显示标题栏。title: '用户管理', // 简单文本标题。这套程序很快会使用VUE改下。记录下来留个纪念吧。不如HTML标题方便灵活。一般配合定时器来用。

2025-11-05 22:14:34 252

原创 开通网站全流程

例如内部应用,可以用ip来访问,无需域名。但是如果要绑定小程序等等要求后台必须是域名访问,这个时候就需要域名。另外用域名,迁移服务器时,ip可变,域名不变。有好处就有坏处,使用域名的话需要备案。这个也在云服务商网站上办理。有问题,直接咨询对应客服即可。打开后先下载指引,按流程办理即可。财大气促的可以自己机房,自购服务器,并自己拉专线。这步必不可少,要做icp备案30天完成。各厂商都是对新用户笑脸相迎,优惠多多。域名可以直接在云服务商网站上办理。3、域名备案,也就是ICP备案。2、域名可要可不要。

2025-11-05 14:12:04 366

原创 开发指南140-跨服务数据范围限定

举个例子,绩效考核服务对应绩效考核数据库,该数据库和人员核心库是分离的。这样的场景就是跨数据库的数据范围限定问题:列出某个部门的人员绩效考核结果。这种方法有个数据同步的问题,所以一般只冗余存储不变的东西。如存储人员ID的时候也存储下人员姓名。前端首先调用核心人员服务,通过部门id获取部门下人员id,然后把id以参数形式传递给绩效考核服务,从而获取对应结果。把需要的数据存到自己的服务里一份,访问时访问自己的数据。这种方法封装了后台逻辑,前端无需知道太多后台存储细节,缺点是增加了服务之间的偶合性。

2025-11-01 20:42:38 195

原创 开发指南139-VUE里的高级糖块

- 延迟同步,直到失去焦点 -->-- 自动去除首尾空白字符 -->-- 自动转为数值类型 -->-- 修饰符可以串联 -->-- 按键系统修饰符 -->-- 阻止默认行为 -->-- 阻止事件冒泡 -->

2025-10-31 12:55:11 185

原创 ORA-01403: 未找到任何数据

跟踪系统日志发现是触发器的问题。系统维护人员在不动系统的情况下,为了实现某种逻辑可以通过触发器实现。这种方式可以不动代码,不重新部署系统。缺点是移植性差,可维护性差。服务人员更换后,谁也不知道数据怎么莫名奇妙发生变化。开发人员也不清楚,遍查程序也不知所踪。所以,系统维护人员的编写的触发器也应该纳入源代码管理体系。非常简单的语句,分析就知道问题所在了。这个触发器是插入,更新公用的。当初要解决的问题是修改是自动更新。维护人员测试也通过了。系统报错了,新增数据增不了了。开发反馈没有更新过系统。

2025-10-30 10:56:10 266

原创 开发指南138-修改下拉框的向下箭头

el-select的向下箭头即难看也难点。

2025-10-27 21:47:12 230

原创 服务启动不了,报数据库url没有设置

看报错,一定要发散思维,不能只看表面现象。配置没有读到,可能是数据库配置这里出了问题,也可能是配置文件其他部分出了问题,导致无法正确解读配置。询问了所有开发,最近改配置文件没有。一个开发说只是新增了一个类的日志访问级别,想看看具体报错。结果也没有作用,正苦恼的。因为类很多,就很占页面。研发犯了一个不同根的问题。仔细看url设置,没有问题。而且最近根本没有改过数据库配置。这种在配置文件中是不允许的,必须合并相关的根。今天有个微服务启动不了了,报url没设置。问题的根源是这样产生的。

2025-10-26 15:22:34 147 1

原创 EXCEL文本数字如何批量转换为数字

注意直接选择所有转换区域(不要标题行),会直接出现黄色感叹号图标,直接转换即可。选中整列单元格,按下TAB键,出现黄色感叹号图标, 点击图标,选择“转换为数字“。遇到这个小破三角就很讨厌,里面的数据无法运算。修改单元格的属性为数值解决不了问题,需要批量转换。随便找个数值格子输入1,点复制。做管理系统少不了和EXCEL打交道,需要经常核对数据。那么选择这一列数据,点击“数据”中的“分列”还有些方法,就没有必要掌握了,有这三个就已经足够了。但是高手就是高手,也很多隐藏技能。这个应该是正规方法。

2025-10-21 16:44:12 505

原创 开发指南137-身份证有效期截止时间

十六周岁至二十五周岁的,发给有效期十年的居民身份证;四十六周岁以上的,发给长期有效的居民身份证。未满十六周岁的公民,自愿申请领取居民身份证的,发给有效期五年的居民身份证。数据库字段改字符串;作为一个系统,不要改变业务思维,你麻烦是你麻烦的问题,要想办法解决,不能改变业务本身。本平台长期就是存"长期"这两个字,这样才能真正还原身份证正面的有效期限,而不是刺眼的。这样身份证有效期截止时间有两种值,要么是一个具体时间,要么是"长期"这两个字。很多系统为了表达"长期"的概念,使用9999-09-09这样的日期。

2025-10-20 11:44:06 271

原创 平台介绍-集成第三方人力资源系统

有关机构、岗位、人员的服务封装在QLM-HR-Service里,对应数据封装在核心库的sys_org_info、sys_post_info、sys_person_info中。通常的模式是这样:当人力资源系统机构、岗位、人员发生变化时,推送数据给平台核心层。统一搭建平台,然后基于平台重构所有应用,这个目标很宏大,需要时间逐步到达。现在遇到一个客户,购买了平台上应用,需要对接第三方人力资源系统,且由于种种原因,第三方不能进行接口开发。按上述逻辑改造后,平台应用实现了对第三方人力资源数据的无缝对接。

2025-10-19 15:38:06 332

原创 迁移服务器

部分应用用到了SQL SERVER2012(不想花钱升级),安装这个需要3.5版本。下载3.5的安装程序也不行,狗日的,不知道咋想的。为了省钱,云服务器换了服务商。(发现所有服务商都是杀熟,新用户远比续费便宜,赌的就是老用户嫌麻烦,不愿意倒腾数据。费劲几天,省个几千元,想想还是划算啊)。迁移遇到些问题,一一记录下,以便下次迁移再用。部分服务器是window,远程桌面默认端口是3389。找到名为 PortNumber 的键,右键点击并选择“修改”。打开“服务器管理器”,点击“添加角色和功能”。

2025-10-19 08:46:51 240

原创 迁移VisualSVN

云服务器要到期了,这个服务器主要用于管理公司的各项目代码,采用的是VisualSVN。发现续费的话远比新买个同配置的高。这些服务商都是一个套路,低价引入,赌的就是你嫌麻烦,不愿意迁移数据。但是花一天时间能省几千大元也是很香的,果断决定换服务商,迁移数据。注意打包时使用分卷方式,例如300M一个包,这样复制时方便也可。第一步,看VisualSVN的用户模式。最早装的时候也要选这个模式,迁移起来比较方便。第四步:把分卷压缩包复制到新服务器,解压。注意复制时都需要先停止服务。最后启动新服务,搞定!

2025-10-12 00:30:27 199

原创 界面规范11-对话框

right: 0px;top: 0px;color:#333;

2025-09-13 20:43:22 450

原创 界面规范10-树

important;important;important;

2025-09-13 20:26:07 270

原创 意料之外的滚动条

核心原因是:默认情况下,CSS 的盒模型(box-sizing)是 content-box,即 width 只计算内容宽度,不包含 padding。所以 .contont 的实际总宽度 = 100%(父元素宽度) + 20px(左内边距) + 20px(右内边距)这就导致元素总宽度超过了视口宽度,从而出现水平滚动条。元素的 width 和 height 包含内容区域(content)、内边距(padding)和边框(border)元素的 width 和 height 仅包含内容区域(content)

2025-09-07 11:13:05 355

原创 软件公司创业上(从2人到20人)-团队构成

一定以一人为核心,什么双方合作五五开,三方均分等等都是不稳定结构,最终在某个点上就会散架。如果自己贡献大,资源多,就大大方方多拿多要,尤其话语权。不然最后心里窝火,我贡献大拿的少,最后一定爆发。凡客诚品曾经有几十个副总裁,陈年反思:“公司越热闹,烧钱混日子的人越多”。疫情过后,很多企业都在裁员,然后惊奇的发现,工作没有多少影响。都说外包是大公司的专利,其实不然,小公司更需要外包。养人风险过大,有活时没人,有人时没活是常态。为了省钱,不做飞机,搭慢车。构建团队是一切的起点,也是能走多远,干多大的基础。

2025-09-06 15:07:11 188

原创 界面规范9-文字

important;important;important;.qlm_tip{important;important;color:red;

2025-09-06 14:31:49 349

原创 软件公司创业上(从2人到20人)-先为不可胜

华为有个硬性规定,就是把一定比例收入投入研发,持续坚持下来才有了今天的局面。相反的案例是联想这样的,只想通过贸易赚钱,最后会越走越窄。大到国家层面也是这样,“自力更生,艰苦奋斗”是唯一发展硬道理。要完成这个阶段任务,有个捷径就是拉投资,找天使。开发一个产品,成本会很高,把辛苦赚来的钱投入研发是很纠结的。不管做什么行业,销售什么产品,都要有收入,要收入覆盖了支出。软件企业起步只有两种,要么自有软件,要么先代理一个,做二次开发+实施服务。先活下来,同时勒紧裤腰带发展自己的产品,是公司早期修炼的关键。

2025-08-31 09:34:34 139

原创 软件公司创业上(从2人到20人)-序言

有些经历不是亲身经历的,是身边朋友的,或听说的,为了叙事方便移植到了本公司,所以有虚构成分。本序列将分为上、中、下三篇,基本是从2人到20人,从20人到200人,从200人到1000人。存软件公司到1000人是本人的极限了,多说就是误导了。而且我们所做的很多事情,本身就是想联合这个群体,来对抗大公司对行业的垄断和打压。一直想总结下10几年的创业经历,反思+提高,另外也是广交朋友,共同提高。本序列会拉的时间很长,思路也是发散式的,想到哪说到那,见谅。本序列只适合软件企业,其他行业,本人没参与过,没有发言权。

2025-08-30 08:31:55 189

原创 开发指南136-设置零值不显示

el-checkbox v-model="askForUnionForm.showZeroInfo" false-label="0" true-label="1" @change="showZeroInfoChange">零值不显示</el-checkbox>第二步:在el-table-column里根据设置来显示是否显示0值,有两种方法。平台前端是基于VUE+ElmentUI的,以下方法仅限于这个架构。表格里满屏的0蛋不好看,客户要求有不显示零值功能。第一步:使用选择框来设置是否显示零值,默认不显示。

2025-08-30 08:12:17 447

原创 界面规范8-杂项规定

=========持续更新中==========6、尽量减少交互页面层次,避免弹窗再弹窗。5、充分利用屏幕空间,显示尽可能多数据。1、表格数据默认进来填满,不要空白。3、表格需要锁定标题行和关键列。7、修改数据后及时刷新对应列表。2、表格窄时,居中,两边留白。8、表格内标题不使用冒号。4、少用花里胡哨的图片。9、高度宽度要自适应。

2025-08-26 15:49:21 152

原创 开发指南135-CSS中定义参数

对应界面,用户是茄子白菜,各有所爱。在CSS里定义变量。然后在项目里调整是个解决方案。variables.defaultFontFamily可以取得对应参数。* 最后修订日期:2025-05-30。* 功能:前端UI配置。* 千里马平台文件。

2025-08-26 11:16:01 344

原创 界面规范7-可左右拖动的分割条

按钮按下后,需要改变背景色:#8dccff。

2025-08-24 23:44:34 151

原创 每天自动备份oracle

注意标黄的需要替换为自己环境下参数,其中的核心命令用到了exp和forfiles,具体用法自行脑补。oracle数据库比其他数据库都贵,但是自带的管理工具却很差,真不知道咋想的。选择执行的操作为“启动程序”,并选择前面创建的backup.bat文件。1、创建个备份目录,如D:\databack。设置开始时间,建议选择在夜间备份数据库,如每天两点。2、创建个脚本:backup.bat。先手工执行下,确保执行无误。创建一个基本任务,填写任务名称和描述。设置任务的执行周期为每天。用户名/密码@sid。

2025-08-24 20:43:01 554

linux下平台的安装与部署说明

linux下平台的安装与部署说明

2024-03-04

千里马运行平台安装与部署(window)

window下平台的安装与部署说明

2024-03-03

千里马平台技术路线说明书

千里马平台技术路线说明书

2024-02-19

空空如也

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

TA关注的人

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