Is this you? As a journalist, you can create a free Muck Rack account to customize your profile, list your contact preferences, and upload a portfolio of your best work.
Claim your profile
Articles by String methodName
Mocking with Groovy
I would like to share some nice feature I am using extensively to test Groovy code. I am going to make this post short and hopefully useful. Mocking in Groovy There are tons of possiblities to mock in Groovy: groovy metaprogramming. Groovy metaprogramming is one of the features which stands out for sure. We are talking about runtime and compile time one.
Android9.0以后不允许HTTP访问的解决方案_android9 http-CSDN博客
背景 自 Android 9.0 起,默认禁止使用 HTTP 进行访问。当尝试使用 HTTP 链接时,将会收到以下错误信息: "Cleartext HTTP traffic to " + host + " not permitted" 为了解决这一问题,下面介绍两种破解方法: XML布局设置 在 Android 9.0 及以上版本,需要通过以下配置允许 HTTP 访问。在 android/app/res 目录下新建 network_security_config.xml 文件,内容如下: <network-security-config> <base-config cleartextTrafficPermitted="true"> <trust-anchors> <certificates src="system" /> </trust-anchors> </base-config> </network-security-config> 然后在 android/app 目录下的 AndroidManifest.xml 文件中的 application 标签内声明文件:...
从源码全面解析 dubbo 服务端服务调用的来龙去脉
对于 Java 开发者而言,关于 dubbo ,我们一般当做黑盒来进行使用,不需要去打开这个黑盒。 但随着目前程序员行业的发展,我们有必要打开这个黑盒,去探索其中的奥妙。 本期 dubbo 源码解析系列文章,将带你领略 dubbo 源码的奥秘 本期源码文章吸收了之前 Spring、Kakfa、JUC源码文章的教训,将不再一行一行的带大家分析源码,我们将一些不重要的部分当做黑盒处理,以便我们更快、更有效的阅读源码。 虽然现在是互联网寒冬,但乾坤未定,你我皆是黑马! 废话不多说,发车! 对于整个服务端调用来说,主要分为两部分: 服务端启动时:封装的 Handler 和 Filter 服务端调用时:经过 Handler,然后经过 Filter,最后调用目标方法 1、启动封装 我们启动的时候,会经过 Exporter<?> exporter = protocolSPI.export(invoker) ,走 Dubbo SPI 的扩展机制 1.1 过滤器的封装 首先是我们的过滤器的封装:ProtocolFilterWrapper 到这里,我们将过滤器封装成一个链表并且将其封装成...
从源码全面解析 dubbo 服务暴露的来龙去脉
对于 Java 开发者而言,关于 dubbo ,我们一般当做黑盒来进行使用,不需要去打开这个黑盒。 但随着目前程序员行业的发展,我们有必要打开这个黑盒,去探索其中的奥妙。 本期 dubbo 源码解析系列文章,将带你领略 dubbo 源码的奥秘 本期源码文章吸收了之前 Spring、Kakfa、JUC源码文章的教训,将不再一行一行的带大家分析源码,我们将一些不重要的部分当做黑盒处理,以便我们更快、更有效的阅读源码。 虽然现在是互联网寒冬,但乾坤未定,你我皆是黑马! 废话不多说,发车! 本篇文章适合对 dubbo 有兴趣 & 日常工作中有使用的人 环境配置: dubbo版本:3.1.8 maven版本:3.5.4 JDK版本:JDK8 Zookeeper版本:3.4.9 因为服务数据是注册在 Zookeeper 上的,所以需要一个 Zookeeper 的可视化界面:ZooInspector 当然,就算你上述环境配置不全,也不影响你本篇文章的阅读体验。 上一篇文章《从源码全面解析dubbo服务注册的来龙去脉》 我们分析了我们的 Dubbo 是如何解析...
告别硬编码,SpringBoot实现动态增删启停定时任务-51CTO.COM
2023-10-31 10:42:48 要实现动态增删启停定时任务功能,比较广泛的做法是集成Quartz框架。但是本人的开发原则是:在满足项目需求的情况下,尽量少的依赖其它框架,避免项目过于臃肿和复杂。 在spring boot项目中,可以通过@EnableScheduling注解和@Scheduled注解实现定时任务,也可以通过SchedulingConfigurer接口来实现定时任务。但是这两种方式不能动态添加、删除、启动、停止任务。 要实现动态增删启停定时任务功能,比较广泛的做法是集成Quartz框架。但是本人的开发原则是:在满足项目需求的情况下,尽量少的依赖其它框架,避免项目过于臃肿和复杂。 查看spring-context这个jar包中org.springframework.scheduling.ScheduledTaskRegistrar这个类的源代码,发现可以通过改造这个类就能实现动态增删启停定时任务功能。 定时任务列表页 定时任务执行日志 添加执行定时任务的线程池配置类 @Configuration public class SchedulingConfig {...
SpringBoot实现动态定时任务_springboot 动态定时任务_站在墙头上的博客-CSDN博客
1. 写在前面 对于动态定时任务的实现,现在网上有很多开源的第三方框架,比如比较有有名的 xxl-job,还有很多比较好用的,因为我们没有那么复杂的功能,所有这里我就直接通过springboot的定时器为基础写了一个简单的实现。 2.
从源码全面解析 dubbo 服务端服务调用的来龙去脉
👏作者简介:大家好,我是爱敲代码的小黄,独角兽企业的Java开发工程师,CSDN博客专家,阿里云专家博主 📕系列专栏:Java设计模式、Spring源码系列、Netty源码系列、Kafka源码系列、JUC源码系列、duubo源码系列 🔥如果感觉博主的文章还不错的话,请👍三连支持👍一下博主哦 🍂博主正在努力完成2023计划中:以梦为马,扬帆起航,2023追梦人 📝联系方式:hls1793929520,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬👀 一、引言 对于 Java 开发者而言,关于 dubbo ,我们一般当做黑盒来进行使用,不需要去打开这个黑盒。 但随着目前程序员行业的发展,我们有必要打开这个黑盒,去探索其中的奥妙。 本期 dubbo 源码解析系列文章,将带你领略 dubbo 源码的奥秘 本期源码文章吸收了之前 Spring、Kakfa、JUC源码文章的教训,将不再一行一行的带大家分析源码,我们将一些不重要的部分当做黑盒处理,以便我们更快、更有效的阅读源码。 虽然现在是互联网寒冬,但乾坤未定,你我皆是黑马! 废话不多说,发车! 二、服务端调用流程...
Dubbo負載均衡策略之 一致性哈希
本文主要講解了一致性哈希算法的原理以及其存在的數據傾斜的問題,然後引出解決數據傾斜問題的方法,最後分析一致性哈希算法在 Dubbo 中的使用。通過這篇文章,可以了解到一致性哈希算法的原理以及這種算法存在的問題和解決方案。 在這裡引用 dubbo 官網的一段話 —— LoadBalance 中文意思為負載均衡,它的職責是將網絡請求,或者其他形式的負載 「均攤」 到不同的機器上。避免集群中部分伺服器壓力過大,而另一些伺服器比較空閒的情況。通過負載均衡,可以讓每台伺服器獲取到適合自己處理能力的負載。在為高負載伺服器分流的同時,還可以避免資源浪費,一舉兩得。負載均衡可分為軟體負載均衡和硬體負載均衡。在我們日常開發中,一般很難接觸到硬體負載均衡。但軟體負載均衡還是可以接觸到的,比如 Nginx。在 Dubbo 中,也有負載均衡的概念和相應的實現。 Dubbo 需要對服務消費者的調用請求進行分配,避免少數服務提供者負載過大。服務提供者負載過大,會導致部分請求超時。因此將負載均衡到每個服務提供者上,是非常必要的。Dubbo 提供了 4 種負載均衡實現,分別是基於權重隨機算法的...
从源码全面解析 dubbo 服务暴露的来龙去脉
一、引言 对于 Java 开发者而言,关于 dubbo ,我们一般当做黑盒来进行使用,不需要去打开这个黑盒。 但随着目前程序员行业的发展,我们有必要打开这个黑盒,去探索其中的奥妙。 本期 dubbo 源码解析系列文章,将带你领略 dubbo 源码的奥秘 本期源码文章吸收了之前 Spring、Kakfa、JUC源码文章的教训,将不再一行一行的带大家分析源码,我们将一些不重要的部分当做黑盒处理,以便我们更快、更有效的阅读源码。 虽然现在是互联网寒冬,但乾坤未定,你我皆是黑马! 废话不多说,发车! 二、环境配置 本篇文章适合对 dubbo 有兴趣 & 日常工作中有使用的人 环境配置: dubbo版本:3.1.8 maven版本:3.5.4 JDK版本:JDK8 Zookeeper版本:3.4.9 因为服务数据是注册在 Zookeeper 上的,所以需要一个 Zookeeper 的可视化界面:ZooInspector 当然,就算你上述环境配置不全,也不影响你本篇文章的阅读体验。 三、服务暴露 上一篇文章《从源码全面解析dubbo服务注册的来龙去脉》 我们分析了我们的 Dubbo...
AI:我只是想防止用户重复提交,到最后竟然扯到了算法?_不要喷香水的博客-CSDN博客
1.本文大部分内容主要来源于ChatGPT,本人仅对极少部分内容做了规整补充 防止数据重复提交是Web应用程序开发中一个常见的问题,特别是在表单数据提交场景下。为了解决这个问题,以下从前端和后端的角度列举几个方式 以下以vue为示例: 1.禁用按钮 在表单提交时,可以将提交按钮设置为禁用状态,避免用户重复点击按钮提交表单。 <template> <button :disabled="loading" @click="submit">提交</button> </template> <script> export default { data() { return { loading: false } }, methods: { async submit() { this.loading = true this.loading = false } } } </script> 2.防抖和节流 在使用 JavaScript 处理表单提交时,可以对提交事件进行防抖或节流处理,避免用户频繁触发表单提交事件 1.防抖(Debounce) 在一段时间内,只有最后一次操作会触发事件。可以使用...
Java中的动态代理_java动态代理的两种方式_qingfengmax的博客-CSDN博客
Java中常用的有两种动态代理方式,分别为:JDK动态代理和Cglib动态代理。 JDK动态代理是通过实现接口的方式完成动态代理。 Cglib动态代理是通过继承目标类或实现接口的方式完成动态代理。 JDK动态代理中最核心的就是Proxy类和InvocationHandler接口。 Proxy类 通过调用这个类中的静态方法newProxyInstance(),可以返回代理对象。 newProxyInstance()方法需要三个参数,分别是:ClassLoader类加载、目标对象实现的所有接口、InvocationHandler实现类。 InvocationHandler接口 这个接口中有一个invoke方法,代理对象通过调用这个方法对目标方法进行增强。 需求 需求:创建计算器类,进行加减乘除运算。同时需要在进行加减乘除之前打印参数信息,在加减乘除之后打印计算结果。 创建类实现功能 创建Calculator计算器接口,提供加减乘除方法,创建实现类,并完成打印参数与计算结果的功能。 接口: package com.demo.dynamic_proxy.jdk; /** * 计算器接口...
c#动态执行字符串脚本(优化版) - 冰封一夏 - 博客园
像javascript中有eval()来执行动态代码,c#中是没有的,于是自己动手丰衣足食, 先来代码 1 using System; 2 using System.Data; 3 using System.Configuration; 4 using System.Text; 5 using System.CodeDom.Compiler; 6 using Microsoft.CSharp; 7 using System.Reflection; 8 using System.Collections.Generic; 9 10 namespace 检漏仪上位机 11 { 12 /// <summary> 13 /// 本类用来将字符串转为可执行文本并执行 14 /// 从别处复制,勿随意更改! 15 /// </summary> 16 public class Evaluator 17 { 18 #region 构造函数 19 /// <summary> 20 /// 可执行串的构造函数 21 /// </summary> 22 /// <param name="items">...
erreur de recherche d'adresse pour l'acteur · Problème #1011 · dapr/dotnet-sdk · GitHub
Aperçu Lors de l’exécution d’une application compatible dapr via Docker Compose pour la première fois, l’instance de proxy d’acteur renvoyée par IActorProxyFactory lève l’exception suivante lors de l’appel d’une méthode sur cet acteur : Dapr.DaprApiException: error invoke actor method: error finding address for actor type TerminalMessagesActor with id FailTerminalMessagesAsync at Dapr.Actors.DaprHttpInteractor.SendAsyncHandleUnsuccessfulResponse(Func`1 requestFunc, String relativeUri,...
初学J2V8 - 三味码屋~ - 博客园
V8和J2V8 V8 V8是Google开源的JavaScript和WebAssembly引擎,被用于Chrome浏览器和Node.js等。和其它JavaScript引擎把JavaScript转换成字节码或解释执行不同的是,V8在运行JavaScript之前,会将JavaScript编译成原生机器码,并且使用内联缓存等方法来提高性能,V8引擎执行JavaScript的速度可以媲美二进制程序。V8采用 C++ 编写,可以独立运行,也可以嵌入到任何 C++ 程序中。 J2V8 J2V8是对V8引擎的一层Java封装,即J2V8借助JNI来实现Java层对C++层的访问,通过Java将V8的一些关键API暴露出来供外部程序使用。J2V8旨在为Java世界带来更加高效的JavaScript运行时环境,同时J2V8也可以在Windows、Linux、Mac OS等平台上运行。 J2V8的使用 我们在Android工程中演示J2V8如何具体使用。 创建Android工程 首先,我们通过Android Studio创建一个Android工程。 依赖J2V8...
【JavaWeb从零到一】-前置知识_Hhzzy99的博客-CSDN博客
Junit单元测试 测试分类 1.黑盒测试:不需要写代码,给输入值,看程序是否能够输出预期的值 2.白盒测试:需要写代码。关注程序具体的执行流程。(Junit属于白盒测试) Junit使用 步骤: 1.定义一个测试类(测试用例) *建议: *测试类名:被测试类名Test *包名:xxx.xxx.xx.test 2.定义测试方法:可以独立运行 *建议: *方法名:test测试的方法名 *返回值:void *参数列表:空参 3.给方法加@Test 4.导入Junit依赖 *判定结果 *一般我们会使用断言操作来处理结果 Assert.assertEquals(期待值,真实值); *补充 *@Before: *修饰的方法会再测试方法之前被自动执行 *@After *修饰的方法会再测试方法之后被自动执行 反射:框架设计的灵魂 Java代码在计算机中经历的三个阶段 框架:半成品软件。可以在框架的基础上进行软件开发,简化编码 反射:将类的各个组成部分封装为其他对象,这就是反射机制 好处:...
Universal Type Converter
Download source - 150.8 KB Download CHM help file - 322.6 KB Table of Contents Introduction A solution in mind Setting up the project About the code Let's start simple Null TypeConverter IConvertible Implicit - but explicit! Enums Nullable types Done Think global Using the code Extension-Methods Options NuGet package .net Standard/Core IEnumerable - arrays, lists, collections and so on Limitations Conclusion History Version 2.7.1 Version 2.7.1 supports converting Guid to byte[] NuGet-package...
Show More
loading
Actions
Is this you?
As a journalist, you can create a free Muck Rack account to customize your profile, list your contact preferences, and upload a portfolio of your best work.Get in touch with String
Contact String, search articles and posts on X, monitor coverage, and track replies from one place.
Learn more about Muck Rack