自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zyl042的博客

仰道者企,如道者浸,皆知道之事,不知道之道。吾常闻,非人勤以求知,乃知者勤以求人也。然吾知其谬。其知者非求人,实乃出而逐人矣。其刻深无情者,如鹰犬逐兔。

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

原创 生成二维码图片utils

【代码】生成二维码图片utils。

2025-09-12 14:23:27 21

原创 下载附件为zip公共实现

只需要传入以下参数,就能统一实现下载附件为zip。

2025-09-03 14:46:54 125

原创 Excel Word Pdf 格式转换

配置pom文件,引入依赖。

2025-08-29 16:52:45 326

原创 ExcelUtils实现 设置内容 插入行 复制行列格式

自动填充对应excel单元格;

2025-08-22 17:07:23 235

原创 @Autowired @Resource IDE警告 和 依赖注入

摘要: 本文探讨了Spring依赖注入中的常见问题与最佳实践。 @Autowired与@Resource区别:前者来自Spring框架,默认按类型装配;后者是Java标准,默认按名称装配。部分IDE对@Resource的支持更友好。 字段注入不推荐:Spring官方建议使用构造器注入,因其支持不可变性、强制依赖和易测试性,而字段注入存在依赖不透明、测试困难等问题。 三种注入方式对比: 构造器注入:强制依赖、不可变,但参数过多时影响可读性; Setter注入:灵活但依赖可变,易遗漏; 字段注入:简洁但依赖容器

2025-08-15 14:40:43 841

原创 容器 K8S CRI CNI CSI 学习(二)

本文介绍了Kubernetes中的三大关键接口:CRI(容器运行时接口)、CNI(容器网络接口)和CSI(容器存储接口),它们分别负责容器运行时、网络和存储的标准化管理。文章详细阐述了Kubernetes从早期依赖Docker到逐步支持CRI-O、containerd等容器运行时的演进过程。在存储系统方面,对比了块存储、文件存储和对象存储三种形式,解释了文件分配表(FAT)和文件系统的工作原理,展示了如何通过元数据管理实现文件的高级功能。这些接口和存储技术的标准化推动了容器生态的发展。

2025-08-13 11:20:24 737

原创 容器 K8S Docker Kata 学习(一)

使用容器技术来提供应用的隔离,所以在钻研之前, 需要通过熟悉容器的基本知识来更加深入地理解包括认识到存在的容 器技术分支, 诸如或者。什么是容器:用Linux容器技术隔离组件:开发者不是使用虚拟机来隔离每个(或者通常说的软件进程), 而是正在转向容器技术。容器允许你在同一台机器上运行多个服务, 不仅提不同的环境给每个服务, 而且将它们互相隔离。容器类似虚拟机, 但开销小很多。一个容器里运行的进程实际上运行在上, 就像所有其他进程一样(不像虚拟机, 进程是上的)。

2025-08-11 10:35:12 668

原创 程序员的职业素养-The Clean Coder

软件专业人士?1.清楚你要做什么 2.担当责任 3.不行损害之事 4.职业道德简单来讲,就是尽职尽责,对自己犯下的错误负责。代码中难免会出现bug,但这并不意味着你不用对它们负责;没人能写出完美的代码,但这并不代表你不用对不完美负责。测试驱动开发(TDD):先写测试,再写要测的代码。

2025-08-04 11:30:16 865

原创 架构是演进的——凤凰架构

作者的凤凰指的是(不死鸟)本书介绍了架构演进的历史:架构并不是被发明出来的,而是持续演进的结果。软件架构风格从大型机(Mainframe),到(Distributed),到(Monolithic),到(Service-Oriented),到(Microservices),到(Service Mesh),到(Serverless)……技术架构上确实呈现出“从大到小”的发展趋势。,比系统的任何其他属性,包括准确性、一致性和完整性,都来得更加重要。——,1991可能与绝大多数人心中的认知会有差异,“

2025-07-30 10:57:24 732

原创 模式结构-微服务架构设计模式

需求部分描述了必须解决的问题和围绕这个问题的特定上下文环境。需求有时候是相互冲突的,所以。哪一个需求更重要,取决于他的上下文。你必须把。

2025-07-18 16:39:51 354

原创 分布式系统的八大谬误

这些谬误由Peter Deutsch于1994年提出,后经James Gosling等人补充。

2025-07-02 11:30:52 165

原创 ‌RESTful API 设计规范

是一种遵循REST架构风格的应用程序编程接口,它通过统一的HTTP方法(如GET、POST、PUT、DELETE)对网络资源进行操作,强调无状态通信、资源标识和可扩展性‌。一切网络实体(如用户、订单)均抽象为资源,每个资源通过唯一URI标识(如/users/123),URI设计需具有自描述性和可寻址性。‌灵活性‌:资源的多重表示(如JSON、HTML)适应不同客户端需求。‌协议无关性‌:虽常基于HTTP,但REST本身不依赖特定协议。‌易维护性‌:清晰的URI和HTTP语义降低团队协作成本。

2025-06-25 10:41:59 627

原创 谷歌浏览器插件记录

Washbaidu: 一个很努力提升百度搜索体验的插件 - 发现频道 - 小众软件官方论坛沉浸式翻译 - 免费双语对照网页翻译插件

2025-06-24 17:06:44 167

原创 Idea中CheckStyle安装配置使用

【代码】Idea中CheckStyle安装配置使用。

2025-06-24 16:40:16 512

原创 Git提交时 本地忽略文件设置

修改该文件,会导致提交时提示gitignore修改,提交会导致修改远端文件。修改该文件,只对本地生效,不会提交。

2025-06-24 16:05:09 168

原创 VO,DTO,BO,PO,DO

数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,更符合泛指用于展示层与服务层之间的数据传输对象。持久化对象,它跟持久层(通常是关系型数据库)的数据结构形成一一对应的映射关系,如果持久层是关系型数据库,那么,数据表中的每个字段(或若干个)就对应PO的一个(或若干个)属性。BO:一般只在service层,业务逻辑对象,对PO的整合数据,不一定完全对应PO。

2025-06-24 16:01:38 379

原创 Yaml文件读写的几种方式(JAVA)

Ymal: YAML是"YAML Ain't a Markup Language"(YAML不是一种标记语言)的递归缩写。在开发的这种语言时,YAML的意思其实是:"Yet Another Markup Language"(仍是一种标记语言),但为了强调这种语言以数据做为中心,而不是以标记语言为重点,而用反向缩略语重命名。 数据结构可以用类似大纲的缩排方式呈现,结构通过缩进来表示,连续的项目通过减号“-”来表示,map结构里面的key/value对用冒号“:”来分隔。1.SnakeYam...

2022-05-21 15:45:56 7837

原创 Mybaties、MP日志打印配置

修改application.yaml文件:将mybaties-puls中,log-impl改为Log4j2Impl;(使用log4j作为日志打印)mp自带三种log-impl:(1)NoLoggingImpl:不打印,打印日志为空方法,是否启用强制返回false;(2)StdOutImpl:打印到控制台,打印日志为syso,是否启用强制返回true;(3)Slf4jImpl:打印到文件,打印日志为log,log.isDebugenabled();修改log4j2.xml文件:

2022-05-05 17:48:18 962

原创 MyBatis-Plus基础(一)

官网:简介 | MyBatis-PlusMyBatis-Plus(opens new window)(简称 MP)是一个MyBatis(opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。注:字面意思,MyBatis的增强,进一步简化了sql等的编写;特性:无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑 损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作 强大的 CRUD 操...

2022-03-25 18:48:02 1664

原创 云计算基础(三)—— Libvrit

Libvirt:Libvirt是用于管理虚拟化平台的开源的API,后台程序和管理工具。它可以用于管理KVM、Xen、VMware ESX,QEMU和其他虚拟化技术。这些API在云计算的解决方案中广泛使用。Libvirtd是一个daemon进程,可以被本地和远程的virsh(命令行工具)调用,Libvirtd通过调用qemu-kvm操作管理虚拟机。libvirt由应用程序编程接口 (API) 库、一个守护进程 (libvirtd),和默认命令行实用工具 (virsh)等部分组成。Libvirt屏.

2022-03-23 13:42:41 1398

原创 云计算基础(二)—— 虚拟化

虚拟化:一台PC机的组成包括:Keyboard(键盘)、Monitor(显示器)、CPU、RAM、I/O(Disk,Network),这是基本的五大部件。虚拟化就是在这些基础物理设备上运行多个OS。注:通过抽象系统资源(计算、存储、网络),在原有物理设备上模拟OS,来方便使用管理;比如将服务器抽象为计算池、存储池、网络池,创建虚拟机时从其中抽取相关资源。虚拟化和云计算:虚拟化是一种技术,云计算是一种使用模式。 虚拟化是指将物理的实体,通过软件模式,形成若干虚拟存在的系统,其实真是运作还

2022-03-21 17:57:59 3631

原创 云计算基础(一)2022-3-21

概念:云计算:云计算(cloud computing)是分布式计算的一种,指的是通过网络“云”将巨大的数据计算处理程序分解成无数个小程序,然后,通过多部服务器组成的系统进行处理和分析这些小程序得到结果并返回给用户。云计算早期,简单地说,就是简单的分布式计算,解决任务分发,并进行计算结果的合并。因而,云计算又称为网格计算。通过这项技术,可以在很短的时间内(几秒钟)完成对数以万计的数据的处理,从而达到强大的网络服务。通常,它的服务类型分为三类,即基础设施即服务(IaaS)、平台即服务(PaaS)和软

2022-03-21 14:49:47 1029

原创 Grafana初步搭建和使用

Grafana 是一个完整的可观察性堆栈,可让您监控和分析指标、日志和跟踪。它允许您查询、可视化、提醒和了解您的数据,无论数据存储在何处。与您的团队创建、探索和共享漂亮的仪表板,并培养数据驱动的文化。有关详细信息,请参阅Grafana 概述。我们的可观察性堆栈具有以下产品和组件。1.下载启动:grafana-server.exe2.默认地址:http://localhost:3000/默认用户名:admin 默认密码:admin3.添加数据源:选择Prometheus,填写U..

2022-02-24 15:41:14 2108

原创 Prometheus初步搭建和配置(Windows)

官网:Overview | Prometheus1.Prometheus启动:执行prometheus.exe,Prometheus启动时增加--web.enable-lifecycle;可以使用 http://localhost:9090/-/reload 来重新加载;默认地址为:http://localhost:9090/graph 地址http://localhost:9090/targets可查看当前节点状态2.Grafanna启动:执行grafana-server.exe,默.

2022-02-23 10:08:08 5019

原创 WINDOWS虚拟内存设置

WINDOWS运用了虚拟内存技术,即拿出一部分硬盘空间来充当内存使用,这部分空间即称为虚拟内存。(可一定程度上缓解内存占用过高的问题)1.打开设置;2.打开高级系统设置;3.选择高级,选择性能,选择高级,更改虚拟内存;4.手动设置内存大小,保存重启生效;...

2022-01-12 14:48:19 4949

原创 IDEA中springboot使用mybatis出现的问题

1.IDEA中xml文件需要放到resources下(放在同名类下修改更改pom文件);2.注意xml文件后缀;缺失后缀名时,无法扫描到mapper文件;3.配置文件中mybatis.mapper-locations=classpath:mapping/*.xml

2022-01-07 13:40:24 199

原创 JDBC的getColumns方法使用like产生的特殊字符转义问题

例如Oracle数据库:其jdbc查询字段方法实际为:SELECT * FROM all_tab_columns WHERE table_name LIKE 'A_B_D' ORDER BY table_name,COLUMN_id由于使用了like,当特殊字符如 _ 或者 %时,将其视为通配符,导致查询字段有误;如表 test%% test_1 test_blob test_money;当使用该方法查询test%%时,错误的查询了其他表的字段;处理办法:使用转义 keyw.

2021-12-16 09:47:44 795

原创 表数据并发查询迁移:多表并发、大表并发

多表并发:(1)使用list拆分;(2)拆分后并发执行;private void migraByList() { int readNum = 8; int sqlSlicesNum = 4; int minThreadNum = 1; ExecutorService executorServiceRead = null; AtomicLong wThread = new AtomicLong(0L); exe

2021-12-15 16:49:52 349

原创 Oracle查询表数据分片

select * from tablename sample(0.001) order by columnname asc;可通过抽样sql,粗略判断当前表行数;然后通过主键或者数字类型进行切片;数字类型使用MOD()函数;并发执行多条查询sql;

2021-12-15 14:13:57 1993

原创 Count not install modules:org.apache.commons.io

Count not install modules:org.apache.commons.iorcp打包以后,更改工具路径,启动报错;org.apache.commons.io改为使用外部导入,而不使用netbeans自带;使用netbeans自带jar包时,在C:\User\xxx\AppData\Local\xxx\Cache路径下生成netigso-bundle文件和netigso目录,记录了jar包路径,导致了更改路径后启动不匹配,清除Cache目录可继续正常启动;仅有少数jar包使

2021-08-25 15:05:04 186

原创 pg数据库操作-admin相关

--查看数据库中有哪些序列 --r =普通表, i =索引,S =序列,v =视图,m =物化视图, c =复合类型,t = TOAST表,f =外部表 select * from pg_class where relkind='S'

2021-08-25 14:57:25 402

原创 Node API 节点

什么是节点?节点提供了NetBeans中大多数对象的视觉表示和明显的行为。它可以用来表示来自Datasystems API的数据对象(并为该数据对象提供更加UI友好的包装),也可以出于特殊目的单独创建它。例如,资源管理器中显示的每个图标都是一个节点,这是整个节点层次结构的主要UI界面。(许多对话框,组件面板等也都通过Explorer API基于节点运行。)节点本身不应该用于保存实际数据。应...

2020-02-27 14:33:27 472

原创 日志打印-Logger使用

Import:import java.util.logging.*;import java.util.Date;import java.text.SimpleDateFormat;主方法:内部类是为了输出字符串;不使用会生成xml格式内容;private Logger logger = Logger.getLogger(Log_true.class.getName()...

2020-01-19 16:57:53 1190

原创 Nerbeans RCP

重点:1.创建NetBeans Plaform Application项目2.可以生成多个模块,设置依赖,降低耦合https://platform.netbeans.org/tutorials/nbm-quick-start.html选择文件|新建项目,然后选择NetBeans模块。选择“ NetBeans平台应用程序”右键单击“ WordEditorCore”模块,然后...

2020-01-16 15:13:10 292 1

原创 Rich Client Platform 富客户端应用程序

Rich Client富因特网应用程序(Rich Internet Applications,RIA)利用具有很强交互性的富客户端技术来为用户提供一个更高和更全方位的网络体验。netbeans RCP通用桌面应用程序开发框架NetBeans 平台是桌面应用程序的通用基础。它提供所有大型桌面应用程序共有的服务:窗口管理、菜单、设置和存储、更新管理器和文件访问。领先的优势...

2020-01-07 17:22:02 857

原创 OA addMoidfyModeData(新增人员id)/同步人员自动查询相同字段名

public boolean addMoidfyModeData(String url,String modeid,String ygxm,String duizhaobiao_createid) throws RemoteException{ ModeDateServicePortTypeProxy client= new ModeDateServicePortTypeProxy(url)...

2020-01-06 17:17:16 438

原创 java读取配置文件:注意

Properties prop = new Properties(); int propsize = 0; try { // 通过输入缓冲流进行读取配置文件// InputStream InputStream = new BufferedInputStream(new FileInputStream(new File(filePath))); ClassPathReso...

2019-12-18 14:47:41 176

原创 数据库内查询是否存在预算项目

//数据库内查询是否存在预算项目 private String getDBExist(ArrayList<Map<String, Object>> detailArray,Map<String, Object> formPropert) { String year = formPropert.get("year").toString(); Stri...

2019-12-04 16:38:59 207

原创 改进:页面内查重:数据库查重

页面内数据查重使用了 hashset不会有重复元素的这一特性:把数据放入hashset中,如果有重复元素,hashset将只保存一个,那么其size相对之前将会变小;ArrayList<String> detail = new ArrayList<String>(); for(int i =0; i <detailArray.size();i++ )...

2019-12-02 13:56:29 313

原创 页面提交数据查重;提交数据和数据库内查重;

package highgo.OtherTest;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import java.util.ArrayList;i...

2019-11-15 17:49:02 222

空空如也

空空如也

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

TA关注的人

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