payment-spring-boot
发表于|更新于
|浏览量:
读书只能供给知识的材料,如果融会贯通,应靠思索之力——洛克
分享一个微信支付的开源项目: dromara / payment-spring-boot
微信支付V3支付,支持微信优惠券,代金券、商家券、公众号支付、微信小程序支付、分账、支付分、商家券、合单支付、先享卡、电商收付通等全部微信支付功能API,同时满足服务商、商户开发需求。一键集成,上手快,欢迎star。

号称是最全最好用的微信支付V3 Spring Boot 组件
作者是胖哥:https://felord.cn/
也是我写博客的启发人

相关推荐
2023-09-02
TreeMap踩坑
不降志,不屈身,不追赶时髦,也不回避危险。──胡适 今天使用TreeMap踩坑了 代码如下: 12345678 @Testvoid test() { Map<Integer, Object> map = new TreeMap<>(Comparator.comparing(i -> i % 2 == 0)); map.put(2, 0); map.put(1, 0); map.put(3, 0); System.out.println(map);} 输出结果却是 1{1=0, 2=0} 这是因为Comparator里计算结果重复导致的,即便我们的key并不相同,也会被覆盖。。。 于是我们可以指定计算结果相同时策略: 123456789@Testvoid test() { Map<Integer, Object> map = new TreeMap<>(Comparator.<Integer, Boolean>comp...
2023-12-26
docker运行seata
怀疑一切与信任一切是同样的错误,能得乎其中方为正道。——乔叟 https://hub.docker.com/r/seataio/seata-server 命令: 1docker run --name seata-server -p 8091:8091 -p 7091:7091 seataio/seata-server:latest 自定义配置文件: 123456docker run --name seata-server \ -p 8091:8091 \ -p 7091:7091 \ -e SEATA_CONFIG_NAME=file:/root/seata-config/registry \ -v /PATH/TO/CONFIG_FILE:/root/seata-config \ seataio/seata-server 指定ip 12345docker run --name seata-server \ -p 8091:8091 \ -p 7091:7091 \ ...
2024-10-13
Apache-StreamPark发版编译并上传svn
你期盼世人对你有好的评论吗?如果这样,你就别说自己的好话。——帕斯卡 过程如下: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871...
2024-04-16
mybatis判断批量操作是否全部执行成功
报纸是这个世界的镜子。——埃利斯 例如这样的代码: 123456789101112131415161718192021222324252627282930313233343536373839404142434445import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.ExecutorType;import java.util.List;import org.apache.ibatis.executor.BatchResult;public class BatchOperationExample { public boolean checkAllBatchResultsSuccessful(List<BatchResult> batchResults) { for (BatchResult result : batchResults) { int[] updateCounts = result.g...
2021-01-24
quartz
天下熙熙,皆为利来;天下攘攘,皆为利往。——《史记》 Quartz Job Scheduling Library是什么?Quartz是功能强大的开源作业调度库,几乎可以集成到任何Java应用程序中-从最小的独立应用程序到最大的电子商务系统。Quartz可用于创建简单或复杂的计划,以执行数以万计,数以万计的工作。任务定义为标准Java组件的作业,它们实际上可以执行您可以对其执行的任何编程操作。Quartz Scheduler包含许多企业级功能,例如对JTA事务和集群的支持。 Quartz是免费使用的,并根据Apache 2.0许可获得许可。 简单来说,就是一调度框架,用来干动态定时任务的 quartz官方文档 quartzAPI文档 在springboot中使用quartz 导入依赖 12345<!-- quartz --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-qu...
2021-10-21
@SafeVarargs
不管怎样的事情,都请安静地愉快吧!这是人生。我们要依样地接受人生,勇敢地大胆地,而且永远地微笑着——卢森堡 前两天给mybatis-plus贡献了代码 https://gitee.com/baomidou/mybatis-plus/pulls/192 这里用到了一个注解SafeVarargs 我们在使用动态参数+泛型的时候,会提示来自形参化 vararg 类型的可能的堆污染 例如: 我们这里加上@SafeVarargs后发现它只能加在final或者static修饰的方法上: 不加的话会编译错误 再放几个例子吧: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849package com.ruben.simplescaffold;import org.junit.jupiter.api.Test;import java.util.Arrays;import java.util.List;import java.util.Optional;/** ...
