摘要: 背景 项目开发过程中我们我们会遇到访问静态文件的情况,例如word书签模板,excel导入模板,条文法规文件等,在war包的情况下访问是没有问题的,如果使用jar包部署,使用相对路径访问会出现问题,本文就此问题给出解决方案。 配置 resources文件夹下创建静态目录systemfile,放入测试 阅读全文
posted @ 2021-11-27 14:26 code2roc 阅读(768) 评论(0) 推荐(0) 编辑
摘要: 背景 公司的开发框架集成了附件本地存储,阿里云,华为云等,现项目有要求附件存储与应用部署环境不能是同一台服务器,也不能使用云存储,经过技术选型后决定框架整合minio,将minio部署在另一台服务器开通外网端口即可解决问题 Minio安装部署 下载minio安装部署包,创建对应配置文件,这里提供一个 阅读全文
posted @ 2021-11-20 15:41 code2roc 阅读(583) 评论(0) 推荐(0) 编辑
摘要: 背景 在使用springboot开发项目过程中,会有多种环境切换,例如开发环境,测试环境,演示环境,生产环境等,我们通过建立多个yml文件结合profiles.active属性进行环境指定,但是需要打包时就要手动更改配置文件逐个打包,容易造成不必要的误操作,本文就介绍如何进行不同环境配置文件的动态切 阅读全文
posted @ 2021-11-20 15:40 code2roc 阅读(518) 评论(0) 推荐(0) 编辑
摘要: 背景 最近公司内部oa系统升级,需要增加文件在线预览服务,最常见的文件就是office文档,一开始构思几个方案,比如office软件自带的文件转换,openoffice转换,offce365服务,aspose组件转换,最终采用了aspose转换,原因是组件功能完善,不依赖其它软件安装环境 系统设计 阅读全文
posted @ 2021-10-16 17:18 code2roc 阅读(5275) 评论(2) 推荐(1) 编辑
摘要: 背景 接上文SpringBoot集成markdown实现文档管理,对于表格的支持markdown不是特别友好,同时内部文档管理需要增加表格式api接口文档的功能,所以决定采用结合数据库存储与动态生成pdf借助目录结构展示的方式 表结构设计 目录表 DROP TABLE IF EXISTS `know 阅读全文
posted @ 2021-09-12 10:28 code2roc 阅读(1088) 评论(0) 推荐(0) 编辑
摘要: 背景 最近在做一个部门内部简单的知识库系统,便于新人入职了解与一些常见问题的解答,知识库的形式是以文档为主,为了快速实现文档功能,决定采用markdown形式录入,生成本地文件后以html方式展现,层次清晰便于查看 表结构设计 文档信息表 DROP TABLE IF EXISTS `knowledg 阅读全文
posted @ 2021-09-11 16:52 code2roc 阅读(790) 评论(0) 推荐(1) 编辑
摘要: 前言 最近在开发产品的过程中,需要将业务功能拆分成独立子系统,既可以单独使用也可以集成部署,这里就需要对框架进行扩展,支持用户统一管理与单点登陆。我们的基础框架使用redis实现token认证,所以只需要所有子系统共享redis数据就可以实现单点登陆,主要的难点是sso统一用户管理,我们这里选择的是 阅读全文
posted @ 2021-09-05 12:36 code2roc 阅读(800) 评论(0) 推荐(0) 编辑
摘要: 前言 在实际框架或产品开发过程中,springboot中集成quarzt方式基本是以job和trigger的bean对象方式直接硬编码完成的,例如以下代码示例。对于系统内定义的所有定时任务类型,具体执行类,执行策略,运行状态都没有一个动态全局的管理,所有决定将quartz做成可视化配置管理,便于统一 阅读全文
posted @ 2021-08-29 11:24 code2roc 阅读(528) 评论(0) 推荐(0) 编辑
摘要: 前言 在实际开发过程中,web应用经常会出现网络延迟,接口处理时间略长,用户习惯等原因造成的客户连续多次点击提交按钮调用接口,导致数据库会出现重复数据或这接口业务逻辑bug等问题 方案 利用redis锁实同一个用户同一个请求2秒内重复提交返回错误路由 SubmitLock 标记需要拦截的方法 @Ta 阅读全文
posted @ 2021-08-29 10:56 code2roc 阅读(317) 评论(0) 推荐(0) 编辑
摘要: 前言 在实际springboot集成redis使用过程中,针对不同类型的业务数据,可能存在不同的dbindex中,例如token存储db0,redis全局锁存储dbindex1,需要我们对RedisTemplate操作进行扩展,支持单次操作不同的dbindex 方案 系统加载时初始化根据redis使 阅读全文
posted @ 2021-08-29 10:40 code2roc 阅读(839) 评论(0) 推荐(0) 编辑