- 博客(1185)
- 资源 (78)
- 收藏
- 关注
原创 Java 使用Maven Surefire插件批量运行单元测试
Maven中使用mvn test运行测试Maven中用于运行单元测试的插件称为 Maven SurefireMaven Surefire不需要显示配置, 如果需要进阶使用,可以进行配置。
2024-10-30 22:42:27 727
原创 Spring Boot 3项目创建与示例(Web+JPA)
以下是一个Spring Boot 3.3.4整合JPA的示例,它展示了如何在Spring Boot应用程序中使用JPA进行数据持久化。
2024-10-28 22:21:24 260
原创 MySQL 的完整介绍
MySQL社区版适合个人开发者、小型企业和非商业用途,具有开源免费、轻量级和社区支持等特点。MySQL企业版适合大型企业和商业应用,提供高级功能、专业支持和商业授权,确保数据库的稳定性和安全性。在选择MySQL版本时,用户应根据自己的需求和预算进行权衡。如果需要一个功能全面且稳定可靠的数据库解决方案,并且预算允许,那么MySQL企业版可能是一个更好的选择。而对于个人开发者或小型企业而言,MySQL社区版则可能是一个更具成本效益的选择。
2024-10-24 22:09:34 993
原创 JMeter详细介绍和相关概念
在测试计划上可以添加用户定义的变量,这些变量相当于是全局变量,一般添加一些系统常用的配置。但请注意,如果测试过程中想切换环境或配置,一般不建议在测试计划上添加变量,因为不方便启用和禁用。此时,可以直接添加用户自定义变量组件。
2024-10-22 22:17:19 1075
原创 使用OpenRewrite将Java自动升级到Java 21
使用 OpenRewrite 可以实现将Java 项目自动升级到Java 21语法。
2024-10-15 06:54:19 944
原创 基于Maven 运行OpenRewrite的快速示例
本篇介绍一个基于Maven 运行OpenRewrite 的快速示例,展示了如何在Maven项目中使用OpenRewrite 进行代码重构。本篇达成的效果是使用OpenRewrite 对源码自动格式化。
2024-10-11 22:14:58 575
原创 OpenRewrite配方之代码格式化——org.openrewrite.java.format.AutoFormat
例如,在某些风格指南中,可能会要求在 if 语句、for 循环等控制结构的条件周围使用额外的括号,即使它们不是必需的。:调整代码的缩进和空格,使其符合标准的代码格式。是 OpenRewrite 框架中的一个配方(Recipe),其主要作用是对 Java 源代码进行自动格式化,以确保代码风格的一致性和符合既定的编码规范。:格式化字符串和字符常量,例如确保字符串字面量的引号使用一致,以及处理字符串内部的转义字符。配方还可以执行其他类型的代码风格调整,如调整变量名的命名风格、方法参数的排列顺序等。
2024-10-11 22:12:16 351
原创 用代码生成代码之Roslyn-C#代码分析和生成工具
此外,Roslyn还提供了一种新的语法解析器和语义分析器,能够更快速地解析和分析代码,提高了代码分析的效率。Roslyn API是微软开源的.NET编译器平台提供的一套丰富的代码分析和编译API,它支持C#和Visual Basic语言。它的出现不仅提高了开发效率和质量,还为开发者带来了更多的创新可能性。Roslyn是微软公司开源的.NET编译器,它提供了丰富的代码分析API,并支持C#和Visual Basic代码的编译。是代码的抽象语法树(AST)的表示,它包含了代码的结构化信息。
2024-09-20 06:55:56 1064
原创 Nexus基本介绍
Nexus是Sonatype公司发布的一款强大的仓库(Repository)管理软件,常被用来搭建Maven私服,因此也被称为“Maven仓库管理器”。
2024-09-10 06:17:53 1291 1
原创 Spring Boot 的Web项目如何直接显示html
实际的开发中,在Spring Boot的Web项目中直接使用html文件的场景已经比较少了, 或者是只需要很简单的页面显示,或者是演示的需要, 大部分的状况都是Spring Boot作为后端提供REST 的服务,结合其他的一些前端Framework进行开发,比如VUE,Ext JS等。
2024-09-05 07:04:37 409
原创 Spring WebSocket 快速示例
WebSocket是HTML5下一种新的协议(websocket协议本质上是一个基于TCP的协议),它实现了浏览器与服务器之间的全双工通信,能够更好地节省服务器资源和带宽,并达到实时通讯的目的。WebSocket是一个持久化的协议,一旦建立连接,双方可以持续进行数据传输,直到连接被关闭。Spring WebSocket 提供了一种在Spring应用程序中集成WebSocket协议的方式,以实现全双工通信。以下是一个简单的Spring WebSocket示例,包括基本的配置和消息处理。
2024-09-05 06:51:29 383
原创 Python测试之测试覆盖率统计
本篇承接上一篇,在此基础上介绍如何基于pytest进行测试的覆盖率统计。要在使用pytest进行测试时检测代码覆盖率,可以使用pytest-cov插件。这个插件是基于,它能帮助你了解哪些代码部分被测试覆盖到,哪些没有。
2024-08-25 21:39:54 1291
原创 Python测试框架之—— pytest介绍与示例
Pytest是一个功能强大且易于使用的Python测试框架,它提供了丰富的功能和灵活的用法,使得编写和运行测试变得简单而高效。
2024-08-25 08:50:10 1341
原创 VS Code中基于MSTest编写和运行测试
MS Test(Microsoft Test Framework)是微软提供的一个用于.NET应用程序的单元测试框架。以下是一个使用MS Test进行单元测试的示例,该示例将涵盖测试的基本步骤和概念。
2024-08-20 23:46:08 1226
原创 VS Code开发C#(.NET)之快速入门
通过以上步骤,可以在VS Code中高效地开发C#应用程序。VS Code的灵活性和可扩展性使得它成为C#开发者的强大工具。中数字键“1”的左边,其上档符号是“~ ”,使用Shift键可以换挡输入。C#是基于.NET框架的,因此需要安装 .NET SDK。,是西文字符中的附加符号,主要用于计算机领域。下载并安装适用于操作系统的.NET SDK。(backquote),又称。
2024-08-20 22:40:10 4629 1
原创 如何通过API的方式下载VS Code扩展的最新版本
通过以上方式就可以实现自动下载插件的最新版本。这个流程可以整合进更大的自动更新脚本中,以适应更广泛的自动化需求。
2024-08-13 22:53:15 745
原创 如何获取VS Code扩展的版本更新信息
因为企业内部有架设私有扩展管理器的要求,但是对于一些官方市场的插件,希望可以自动获取这些扩展的更新并上传至私有扩展管理器。于是就有了本篇介绍的需求: 通过API的方式获取VS Code 扩展的更新。为了演示方便,这里使用 Postman 来呼叫这个接口, 以获取“Test Runner for Java“ 的扩展的版本为例。插件的版本信息,需要配置一个 POST 请求,包括设置必要的 Headers 和 Body。注意: 这里一定要将Accept设置为正确,否则调用的时候会出现下面的。
2024-08-13 22:08:30 1070
原创 Maven Mirror - 仓库镜像的介绍和配置
Maven Mirror(Maven镜像)是Maven构建工具中用于优化依赖下载速度和提高构建效率的一种机制。在使用 Maven 构建应用程序时,Maven 默认会从 Maven 官方的中央仓库中下载依赖包。但是,在该仓库受到网络限制或访问速度过慢等问题时,可以配置 Maven 镜像源来提供更快的下载速度和更好的依赖包管理管理体验。镜像源配置可以使用文件进行配置。
2024-08-11 22:57:17 2041
原创 Eclipse插件之JDepend(分析代码依赖关系)
Eclipse JDepend插件是一个专为Eclipse IDE设计的工具,用于分析Java项目的包依赖关系,从而帮助开发者评估代码的可扩展性、可重用性和可维护性。
2024-08-10 22:58:54 1365
原创 Eclipse插件之Java Dependency Viewer(显示类和包的关系图)
在复杂的Java项目中,理解和分析类与类之间、包与包之间的依赖关系是非常有用的。”,然后点击“Add…”按钮添加本地仓库(指向下载的zip包所在位置),之后选择该插件进行安装。在Eclipse Marketplace中搜索“Java Dependency Viewer”,找到该插件并点击“Go”或“Install”按钮。直接下载包含Java Dependency Viewer 插件的Eclipse , 下载完成后启动Eclipse 就可以使用。下载Java Dependency Viewer的zip包。
2024-08-10 22:06:09 780
原创 VS Code 扩展之——私有扩展管理(Private Extension Manager)
Visual Studio Code 的扩展 Garmin 的 Private Extension Manager 是一个用于管理和安装私有或自定义 VS Code 扩展的工具。它允许用户从非公共源安装扩展,比如内部部署的服务器或私有仓库,非常适合组织内部使用。
2024-08-05 22:28:12 1068
原创 将Git远程仓库中的项目迁移到另一个远程库, So easy
要将一个Git远程仓库中的项目迁移到另一个远程库,并包含提交历史记录,可以使用以下描述的步骤。这个过程包括将现有的仓库克隆为一个裸仓库、添加新的远程仓库地址、然后将所有数据推送到这个新仓库。采用这种方法,可以完整地迁移一个Git项目到另一个远程库,包括它的所有提交历史和分支,是项目迁移与镜像的一个常见且有效的策略。此命令确保所有的分支和标签被推送到新的远程仓库,新的仓库将完全复制原始仓库的提交历史和所有其他数据。将一个Git远程仓库中的项目迁移到另一个远程库, 这里的示例是将原来控管在。
2024-07-28 22:14:21 375
原创 .NET 相关概念
NET 是一个由 Microsoft 开发和维护的广泛用于构建各种类型应用程序的开发框架。它是一个跨平台、跨语言的开发平台,提供了丰富的类库、API和开发工具,支持开发者使用多种编程语言(如C#、VB.NET、F#等)来构建应用程序。.NET 应用程序可以运行在多种操作系统上,包括Windows、macOS和Linux,并且支持从桌面应用到Web应用、移动应用、云服务、游戏和物联网(IoT)应用等多种应用类型。
2024-07-25 22:46:25 1149
原创 代码自动化重构工具OpenRewrite介绍
定义:OpenRewrite 是一个用于源代码的自动重构工具,它通过提供一套自动化的解决方案,帮助开发人员改善代码的可读性、可维护性和性能。目的:OpenRewrite 的主要目的是减少手动修改代码的工作量,并确保代码的一致性和质量。应用场景:OpenRewrite 的主要用途包括但不限于自动化代码重构、框架迁移、安全漏洞修复以及代码技术债务的消除等。
2024-07-24 23:06:56 1306
原创 响应式编程框架Reactor之 Flux 和 Mono 的介绍和区别
基本概念Mono是Reactor中的一个类,它表示一个异步的单个值或零个值的结果。Mono可以看作是一个特殊的Publisher,用于产生数据流,但这个数据流最多只包含一个元素,或者在没有任何元素时直接发出完成信号或错误信号。作用Mono主要用于处理那些预期会返回一个单一结果或不需要返回任何结果的异步操作,如数据库查询(假设查询结果是唯一的)、网络请求等。它提供了丰富的操作符来支持数据的转换、过滤、组合等操作,以及错误处理和资源管理等。创建方式可以通过Mono的静态方法创建,如等。
2024-07-24 23:05:10 748 1
原创 Spring WebFlux 介绍与效果演示示例
响应式编程Spring WebFlux 使用响应式编程的理念,其中数据流和异步操作是核心概念。这种编程范式适用于高并发、高吞吐量的场景,允许应用程序以非阻塞的方式处理请求,并有效地利用服务器资源。它使用 Reactor 框架作为响应式编程的核心库,通过事件驱动和异步操作来处理请求和数据流。非阻塞和异步处理Spring WebFlux 支持异步和非阻塞的处理方式,这使得它能够处理高负载的情况,如即时通讯、实时数据推送等。
2024-07-21 09:57:28 300
原创 Java响应式编程库Reactor的介绍和基本使用
Reactor 基于响应式流规范(Reactive Streams Specification)的第四代响应式库。Reactor 是一种高性能的并发处理机制,主要在网络编程和事件驱动系统中得到广泛应用。它起源于多路I/O复用中的select、poll、epoll等网络模型,被设计为一种事件驱动的处理框架。Reactor的核心理念是将所有要处理的I/O事件注册到一个中心I/O多路复用器上,同时主线程/进程阻塞在多路复用器上。
2024-07-20 23:41:06 1648
原创 响应式编程(Reactive Programming)是什么?
Reactive Programming是一种强大的编程范式,它通过数据流和变化的传播来提高应用的响应性、可维护性和可扩展性。随着分布式系统和微服务架构的广泛应用,Reactive Programming技术将在未来发挥越来越重要的作用。不同编程语言都提供了相应的实现库或框架来支持Reactive Programming。
2024-07-20 23:00:34 456
原创 一篇学通Axios
基本概念Axios(全称 ajax I/O system)不是一种新技术,本质上是对原生 XHR(XMLHttpRequest)的封装,但它是基于 Promise 的实现版本,符合最新的 ES 规范。Axios 提供了简单而直观的 API,使得在前端应用程序中进行 HTTP 通信变得更加容易。Axios 可以与现代前端框架(如 React、Vue.js 和 Angular)以及后端服务器(如 Node.js)配合使用。主要特性从浏览器中创建 XMLHttpRequests。
2024-07-13 22:10:15 690
原创 Java高风险之在用户界面(UI)中显示敏感数据(Display of sensitive data in the user interface)
Display of sensitive data in the user interface,在用户界面(UI)中显示敏感数据可能带来多种风险,这可能导致信息泄露和不必要的风险,因为敏感数据可能会被截屏、监控软件捕获、或者被旁观者看到。这些风险涉及数据泄露、身份盗用、经济损失和法律处罚等。数据泄露如果敏感数据(如个人身份信息、财务数据、业务信息等)在UI中未受保护地显示,任何能够访问该界面的用户或恶意第三方都可能获取这些信息。身份盗用。
2024-07-13 11:13:33 274
原创 VS Code 扩展如何发布到私有Nexus的正确姿势
Nexus是一个强大的仓库管理器,全称为Nexus Repository Manager,由Sonatype公司开发。其支持多种类型的仓库,包括Maven、npm、Docker等。使用Nexus 可以搭建私有仓库。虽然没有直接提供对VS Code扩展的支持,但使用 npm 可以达成发布VS Code扩展到Nexus库的目的。
2024-07-10 22:09:49 582
原创 软件代码漏洞风险等级
代码漏洞的风险等级通常根据漏洞的潜在影响、利用难易程度以及可能造成的损害程度来划分。不同的组织或机构可能会采用不同的标准或评分系统来评估漏洞的风险等级。
2024-07-09 22:14:00 381
原创 Spring Boot项目中JPA操作视图会改变原表吗?
有一个表,定义了几个属性,该表对应的实体类是 MyUser。/*** @date 2024年7月9日 下午9:42:54*//*** @date 2024年7月9日*/@Entity@Idreturn id;基于该表,创建了一个View的类MyUserV。/*** @date 2024年7月9日 下午9:43:42*//*** @date 2024年7月9日*/@Idreturn id;
2024-07-09 22:00:31 521
原创 Java高风险漏洞与修复之——LDAP injection(LDAP注入)
LDAP注入是一种攻击技术,它可以利用应用程序中的安全漏洞对LDAP(轻量级目录访问协议)服务进行恶意查询或修改操作。当应用程序未能适当地清理用户的输入内容,将其嵌入到LDAP查询中时,就可能发生LDAP注入。攻击者通过注入未经授权的指令或条件来操纵查询结果,可能导致敏感数据的泄露、未授权的数据修改或者删除。与SQL注入类似,LDAP注入可以使攻击者修改LDAP查询的逻辑,对LDAP树目录进行不合法的搜索和修改。例如,攻击者可以修改一个查询,绕过登录验证,或者获取无权访问的用户信息。
2024-07-02 22:39:08 390
原创 AI基本概念(人工智能、机器学习、深度学习)
一、概述ChatGPT 3.5是OpenAI在ChatGPT系列基础上进行改进的一款AI模型,它在自然语言处理方面展现出了非常强大的能力,能够进行对话、阅读、生成文本等多种任务。二、主要特点模型规模与参数:ChatGPT 3.5的预训练模型包含了1750亿个参数,是目前最大的自然语言处理模型之一。多语言支持:该模型可以处理多种语言,包括英语、西班牙语、德语、法语、意大利语、荷兰语、俄语、韩语、日语、阿拉伯语和中文等。自适应回复。
2024-07-01 22:22:28 1898
原创 Java代码高风险弱点与修复之——弱密码哈希漏洞-Very weak password hashing (WEAK_PASSWORD_HASH)
在安全性方面,此代码的一个主要问题在于,它依赖于使用SHA-256哈希函数直接处理密码以产生密钥。弱密码哈希漏洞指的是在密码存储和验证过程中,由于使用了不安全的哈希算法或哈希函数的错误使用,导致攻击者能够更容易地破解或绕过密码验证机制。以上代码结合了安全的随机盐值、密钥衍生函数和迭代次数等多个安全机制,大大提升了密码到密钥转换过程的安全性。这意味着相同的密码将始终生成相同的密钥,降低了安全性。:若用户选择的密码复杂度不高,如普通单词或常见短语,即使经过SHA-256哈希,生成的密钥也容易遭受彩虹表攻击。
2024-06-29 21:50:43 421
原创 日志注入风险与解决-Log injection (LOG_INJECTION)
例如,如果将用户提供的恶意字符作为日志输出内容时,就可能会导致日志文件中出现不安全的语句,从而攻击系统。总之,在使用日志记录器(Logger)时,应该避免将用户提供的数据直接作为日志输出内容,可以使用占位符的方式来代替用户提供的数据,以避免黑客攻击。为了避免这个警告,应该避免将用户提供的数据直接作为日志输出内容,可以使用占位符(placeholder)的方式来代替用户提供的数据,以避免黑客攻击。在这个修改后的示例代码中,使用占位符的方式,将用户提供的数据作为参数传递给日志记录器的方法,从而避免了黑客攻击。
2024-06-29 11:41:52 270
JMeter Linux + Window
2024-10-21
Postman windows 64 安装版
2024-08-13
Spring Boot 3 极速搭建OAuth2认证框架示例项目
2024-08-13
JDepend4Eclipse 解压安装版
2024-08-10
Eclipse附带如下插件: 1. Jdepend 2. Java Dependency Viewer 直接解压就可以使用
2024-08-08
Java Dependency Viewer 的Eclipse 插件离线安装包
2024-08-07
支持 ATDD (Acceptance Test Driven Development) 的工具
2024-01-15
截取动态屏幕截图的工具
2023-11-23
Windows 最新版本的allure命令行工具
2023-11-21
Jenkins 2.414.1长期支持版本安装环境
2023-09-18
批量导入maven本地库目录到Nexus私有服务器的脚本
2023-06-28
基于JSP的Java Web项目的CSRF防御示例
2023-01-07
Webpack 快速介绍及入门示例的配套示例
2022-06-24
OpenSSL.rar
2022-01-05
spket集合.rar
2021-06-04
jenkins2.277.4 及解决插件安装相关工具包.rar
2021-05-19
docufreezer-free-setup.exe
2021-03-22
jenkins-2.282-1.1.noarch.rpm
2021-03-03
Ext JS API文档生成器
2020-10-10
ldapadmin-4.19.21906.0-x64-eng.msi
2020-09-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人