易宝支付 java_易宝支付工具类
[java]代码库package utils;
public class PaymentUtil {
/**
* 生成hmac方法
*
* @param p0_Cmd
* 业务类型
* @param p1_MerId
* 商户编号
* @param p2_Order
* 商户订单ID号
* @param p3_Amt
* 支付金额
* @param p4_Cur
* 交易币种
* @param p5_Pid
* 商品名称
* @param p6_Pcat
* 商品种类
* @param p7_Pdesc
* 商品描述
* @param p8_Url
* 商户接受支付成功后的地址
* @param p9_SAF
* 送货地址
* @param pa_MP
* 商户扩展信息
* @param pd_FrpId
* 银行编码
* @param pr_NeedResponse
* 应答机制
* @param keyValue
* 商户密钥
* @return
*/
public static String createHmac(String p0_Cmd, String p1_MerId,
String p2_Order, String p3_Amt, String p4_Cur, String p5_Pid,
String p6_Pcat, String p7_Pdesc, String p8_Url, String p9_SAF,
String pa_MP, String pd_FrpId, String pr_NeedResponse,
String keyValue) {
StringBuffer sValue = new StringBuffer();
sValue.append(p0_Cmd);
sValue.append(p1_MerId);
sValue.append(p2_Order);
sValue.append(p3_Amt);
sValue.append(p4_Cur);
sValue.append(p5_Pid);
sValue.append(p6_Pcat);
sValue.append(p7_Pdesc);
sValue.append(p8_Url);
sValue.append(p9_SAF);
sValue.append(pa_MP);
sValue.append(pd_FrpId);
sValue.append(pr_NeedResponse);
String resultValue = DigestUtil.hmacSign(sValue.toString(), keyValue);
return resultValue;
}
/**
* 返回校验hmac方法
*
* @param hmac
* 支付网关发来的加密验证码
* @param p1_MerId
* 商户编号
* @param r0_Cmd
* 业务类型
* @param r1_Code
* 支付结果
* @param r2_TrxId
* 易宝支付交易流水号
* @param r3_Amt
* 支付金额
* @param r4_Cur
* 交易币种
* @param r5_Pid
* 商品名称
* @param r6_Order
* 商户订单号
* @param r7_Uid
* 易宝支付会员ID
* @param r8_MP
* 商户扩展信息
* @param r9_BType
* 交易结果返回类型
* @param keyValue
* 密钥
* @return
*/
public static boolean verifyCallback(String hmac, String p1_MerId,
String r0_Cmd, String r1_Code, String r2_TrxId, String r3_Amt,
String r4_Cur, String r5_Pid, String r6_Order, String r7_Uid,
String r8_MP, String r9_BType, String keyValue) {
StringBuffer sValue = new StringBuffer();
// 商户编号
sValue.append(p1_MerId);
// 业务类型
sValue.append(r0_Cmd);
// 支付结果
sValue.append(r1_Code);
// 易宝支付交易流水号
sValue.append(r2_TrxId);
// 支付金额
sValue.append(r3_Amt);
// 交易币种
sValue.append(r4_Cur);
// 商品名称
sValue.append(r5_Pid);
// 商户订单号
sValue.append(r6_Order);
// 易宝支付会员ID
sValue.append(r7_Uid);
// 商户扩展信息
sValue.append(r8_MP);
// 交易结果返回类型
sValue.append(r9_BType);
String sNewString = DigestUtil.hmacSign(sValue.toString(), keyValue);
if (hmac.equals(sNewString)) {
return true;
}
return false;
}
}
易宝支付 java_易宝支付工具类相关推荐
- java在线支付---04_编写易宝支付的客户端加密工具类
2013/5/30 04_编写易宝支付的客户端加密工具类 创梦综合技术qq交流群:CreDream:251572072 ---------------------------------------- ...
- php 应用宝支付,U8SDK——应用宝YSDK新的支付流程
应用宝不管是之前MSDK,还是现在YSDK,对于普通网络手游来说,他的支付方式都只能是游戏币托管的方式.之前接MSDK的时候,也是费了九牛二虎之力才搞定,主要就是被他这个所谓的"游戏币托管模 ...
- 陈宝峰java_陈宝峰
标签: java fileoutputstream 文件 占用 close 在通过FileOutputStream进行文件输出,尤其是文件内容较大的输出完成之后都需要关闭文件,正常情况下都会通过调用c ...
- java在线支付---02_分析易宝支付的工作流程
2013/5/30 02_分析易宝支付的工作流程 Java技术qq交流群:JavaDream:251572072 ------------------------------------------- ...
- 采宝支付携手 - 打造O2O支付全新生态
互联网行业是一个多领域的行业,从上世纪90年代到今天,互联网已有20多年的发展历史,采宝移动支付,以"移动互联网+"的战略思维整合商品渠道,大力整合优势资源,用了3余年的时间打下移 ...
- java实现易宝支付
易宝支付: 1.环境搭建: Java使用Servlet或者springMVC,使用maven进行环境搭建. 2.添加jar包: <dependencies> <dependency& ...
- 易宝支付[钱麦](附代码)
想到支付首先要知道,就是调用以及回调接口. 1:准备工作导入易宝支付SDK.jar到自己公司私服(公司使用的nexus搭建私服操作如下) 查看/存储库:库(Repositories)----在对应的库 ...
- 在线支付之易宝支付的使用方法
项目中实现在线支付的功能有两种方式: 第一种方式:使用银行提供的接口直接和银行对接.这种方式不用交第三方费用,但是如果要接入多个银行,则需要在本网站中一一使用不同银行提供的接口,这个过程比较麻烦,其次 ...
- java在线支付---06,07,08_在线支付_编写将数据提交给易宝支付的JSP页面,集成和测试向易宝发送支付请求,实现浏览器自动向易宝发送支付请求
06_在线支付_编写将数据提交给易宝支付的JSP页面 -------------------------------------------------------------- 1./payment ...
- 第三方支付平台:易宝支付
国付宝国企 LianLianPay连连支付 这个比较好用,可以自己试试 我这里说的是易宝支付 两种在线支付的方式 在线支付一共有两种方式: 电商直接与银行对接: 电商通过第三方支付平台与银行对接: 电 ...
最新文章
- android小闹钟程序,Android实现闹钟小程序.pdf
- 前端之路(一)之W3C是什么?
- php能打开.shp文件吗,shp文件是什么格式的
- css渲染(二) 文本
- mysql约束教程,MySQL 约束
- 为什么SpringBoot中main方法执行完毕后程序不会直接退出呢
- springboot-属性提示
- 大数据工作由哪几部分组成?
- 3dmax导入shp面拉伸建模
- 记录一下postman汉化踩过的坑
- 更改文件夹目录、硬盘、U盘的图标
- 来自一个大三开学三周的huster的迷茫与失措
- STM32系列(HAL库)——F103C8T6驱动WS2812全彩RGB模块(PWM+DMA方式)
- root权限下手动安装open gapps.2022-01-31
- 【图像修复】基于滤波实现损坏图像修复含Matlab源码
- 联想thinkbook16+ 2023款和2022款参数对比
- PRML 读书笔记 chapter1 Introduce
- MobileNet V2 模型分析+解读
- 阿拉丁统计 2.0丨开源 SDK 生态,既能开箱即用,又能自定义扩展,让你的企业数字化进程“兔飞猛进”
- 带字幕的Youtube
热门文章
- persevere的用法_persevere和persist和insist的区别是什么?
- 怎么安装光盘并重新启动计算机,如何用光盘重新安装电脑系统
- Twitter广告投放怎么做呢?游戏行业可以投放Twitter广告吗?
- 2022-2028年中国直线电机行业市场现状分析及投资前景评估报告
- 【美化桌面】删除电脑桌面快捷键箭头
- ubuntu du/eog 命令
- 盘点最新BTA大厂的Java程序员的招聘技术标准(一目了然)
- 管理储存组和邮箱数据库
- Vite入门从手写一个乞丐版的Vite开始(下)
- 连续时间 Markov 链从某一状态 i 转移到其他状态之前在 i 逗留的时间服从指数分布