实现步骤具体如下:

(学习视频分享:java教学视频)

1、导入依赖

com.alipay.sdk

alipay-sdk-java

4.9.5.ALL

2、配置参数

3、实现方法@ApiOperation(value = "企业转账到支付宝", httpMethod = "POST", produces = "application/json;charset=UTF-8")

@ApiImplicitParams(value = {@ApiImplicitParam(value = "*用户token", name = "token",defaultValue ="", dataType = "String",paramType="header"),

@ApiImplicitParam(value = "支付宝会员id", name = "aliuserId",defaultValue ="", dataType = "int",paramType="query",example = "0"),

@ApiImplicitParam(value = "金额", name = "money",defaultValue ="", dataType = "String",paramType="query")

})

@PostMapping("/alipay/transfer")

public Result getMoney(HttpServletRequest servletRequest,BigDecimal money,@NotNull(message = "支付宝会员id不能为空")String aliuserId){

try {

String out_biz_no = "R-" + System.currentTimeMillis() + ((long) ((Math.random() * 9 + 1) * 100000000L) + "").substring(0, 8);

//构造client

CertAlipayRequest certAlipayRequest = new CertAlipayRequest();

//设置网关地址https://openapi.alipay.com/gateway.do

certAlipayRequest.setServerUrl("https://openapi.alipay.com/gateway.do");

//设置应用AppId

certAlipayRequest.setAppId(appid);

//设置应用私钥

certAlipayRequest.setPrivateKey(zzpri);

certAlipayRequest.setFormat("json");

//设置字符集

certAlipayRequest.setCharset("UTF-8");

//设置签名类型

certAlipayRequest.setSignType("RSA2");

//设置应用公钥证书路径

certAlipayRequest.setCertPath(appcertpath);

//设置支付宝公钥证书路径

certAlipayRequest.setAlipayPublicCertPath(alicertpath);

//设置支付宝根证书路径

certAlipayRequest.setRootCertPath(rootcertpath);

//构造Client

AlipayClient alipayClient = null;

try {

alipayClient = new DefaultAlipayClient(certAlipayRequest);

} catch (AlipayApiException e) {

e.printStackTrace();

}

//实例化接口

AlipayFundTransUniTransferRequest request=new AlipayFundTransUniTransferRequest();

request.setBizContent("{" +

"\"out_biz_no\":\""+out_biz_no+"\"," +

"\"trans_amount\":\""+money+"\"," +

"\"product_code\":\"TRANS_ACCOUNT_NO_PWD\"," +

"\"biz_scene\":\"DIRECT_TRANSFER\"," +

"\"order_title\":\"转账\"," +

"\"payee_info\":{" +

"\"identity\":\""+aliuserId+"\"," +

"\"identity_type\":\"ALIPAY_USER_ID\"," +

" }," +

"\"remark\":\"单笔转账\"" +

" }");

AlipayFundTransUniTransferResponse response=null;

response = alipayClient.certificateExecute(request);

if (response.isSuccess()){

if("10000".equals(response.getCode())){

return Result.ok("转账成功");

} else {

return Result.fail(Integer.valueOf(response.getCode()),response.getSubMsg());

}

}else {

return Result.fail(Integer.valueOf(response.getCode()),response.getSubMsg());

}

}catch (Exception e){

e.printStackTrace();

return Result.error(901,"支付宝转账失败!");

}

}

注意:该功能实现需要先实现支付宝授权功能获取支付宝会员id,支付宝会员id是由2088开头的,如果是用客户手机号进行提现,就会还需要输入客户真实姓名。

用客户手机号提现只是部分参数不同,代码如下:request.setBizContent("{" +

"\"out_biz_no\":\""+out_biz_no+"\"," +

"\"trans_amount\":\""+money+"\"," +

"\"product_code\":\"TRANS_ACCOUNT_NO_PWD\"," +

"\"biz_scene\":\"DIRECT_TRANSFER\"," +

"\"order_title\":\"转账\"," +

"\"payee_info\":{" +

"\"identity\":\""+aliuserId+"\"," +

"\"identity_type\":\"ALIPAY_USER_ID\"," +

"\"name\":\"ALIPAY_USER_ID\"" +

" }," +

"\"remark\":\"姓名\"" +

" }");

java提现功能开发_利用java实现提现金额到支付宝账户的功能相关推荐

  1. java restful接口开发_利用Java框架实现Restful接口

    1.生产场景 生产场景中,有一个PHP后台程序负责采集用户访问门户的数据,之前采用的是piwik+MySQL的采集存储架构,后来投产后,发现每天数据量将近30万条之多!!!显然,原生的mysql是跑不 ...

  2. java 提现,利用java实现提现金额到支付宝账户的功能,提现一万手续费多少

    利用java实现提现金额到支付宝账户的功能利用爪哇岛实现提现金额到支付宝账户的功能, 实现步骤具体如下: (学习视频分享:java教学视频) 1.导入依赖 属国 groupIdcom.alipay.s ...

  3. java 对象复制 反射_利用Java反射机制实现对象相同字段的复制操作

    一.如何实现不同类型对象之间的复制问题? 1.为什么会有这个问题? 近来在进行一个项目开发的时候,为了隐藏后端数据库表结构.同时也为了配合给前端一个更友好的API接口文档(swagger API文档) ...

  4. java注解的开发_使用Java注解开发自动生成SQL

    使用注解开发的好处就是减少配置文件的使用.在实际过程中,随着项目越来越复杂,功能越来越多,会产生非常多的配置文件.但是,当配置文件过多,实际维护过程中产生的问题就不容易定位,这样就会徒劳的增加工作量. ...

  5. java 方法数统计_利用Java简单实现一个代码行数统计器方法实例

    前言 哈喽,我是小黑, 最近学了java的输入输出流后一直心痒痒,总想找一点事情来做,所以用java代码来实现了一下统计代码的所有行数,看一下我上大学以来到底打了多少行. 先附上实现代码吧! pack ...

  6. java mysql jdbc 封装_利用Java针对MySql封装的jdbc框架类 JdbcUtils 完整实现(包括增删改查、JavaBean反射原理,附源代码)...

    近期看老罗的视频,跟着完毕了利用Java操作MySql数据库的一个框架类JdbcUtils.java,完毕对数据库的增删改查.当中查询这块,包含普通的查询和利用反射完毕的查询,主要包含以下几个函数接口 ...

  7. java界面设计股票_利用JAVA实现股票交易系统设计参考.doc

    利用JAVA实现股票交易系统设计参考 目 录 摘要1 关键词1 Abstract2 Key words2 1 概述3 1.1 Java体系结构3 1.2 Java的优点3 1.3 Java的应用3 2 ...

  8. java calendar日期计算_利用Java中Calendar计算两个日期之间的天数和周数

    前言 究竟什么是一个 Calendar 呢?中文的翻译就是日历,那我们立刻可以想到我们生活中有阳(公)历.阴(农)历之分.它们的区别在哪呢? 比如有: 月份的定义 - 阳`(公)历 一年12 个月,每 ...

  9. java 获取文件名长度_利用Java文件类File的方法,获取磁盘文件的文件名、长度、大小等特性...

    利用Java文件类File的方法,获取磁盘文件的文件名.长度.大小等特性. 如题,大神们谁可以编写一个这样的java程序?     happy530755 | 浏览 1482 次 |举报 我 ...

  10. java日期相差周_利用Java中Calendar计算两个日期之间的天数和周数

    前言 究竟什么是一个 Calendar 呢?中文的翻译就是日历,那我们立刻可以想到我们生活中有阳(公)历.阴(农)历之分.它们的区别在哪呢? 比如有: 月份的定义 - 阳`(公)历 一年12 个月,每 ...

最新文章

  1. 视学算法第五轮送书活动获奖名单
  2. 服!AI 让兵马俑“活”起来,颜值惊艳!
  3. 使用redis实现订阅功能
  4. python线上编辑问题_python django - static文件处理与线上部署测试
  5. 微擎乐慧云智慧农场源码V1.0.1
  6. 20190819:(leetcode习题)字符串中的第一个唯一字符
  7. ubuntu19.04支持android,Ubuntu 19.04 最终发布日期和计划功能公布
  8. 我们聊聊快排吧...
  9. 日志管理Rsyslog
  10. 三校生高考计算机专业试题,三校生高考计算机试卷1
  11. avx指令+openmp多线程实现一个基本算法作业 c++
  12. oppo 系列手机刷机教程
  13. PG 数据库表备份方案
  14. golang 爆破破解 rar5 压缩文件密码
  15. JDK1.8的lib相关jar
  16. 阿里中台搞了3年,搞砸了?网传:副总裁玄难“背锅”,辞职创业!
  17. HCU混和动力管理控制器
  18. Ubuntu18.04运行校园网客户端
  19. STM32 HAL库ADC+DMA(非定时器)代码和遇到的问题
  20. SQLSERVER2000--验证码一直不能通过验证

热门文章

  1. 快递 code与快递名称
  2. uniapp得到用户当前定位以及用户选择位置
  3. iOS 技术支持网址
  4. [渝粤教育] 西南科技大学 行政法学与行政诉讼法学 在线考试复习资料
  5. 卡塔尔能源每年将向中石化供应400万吨液化天然气;哪吒汽车发布技术品牌浩智 | 美通企业日报...
  6. day02-08 python基础语法
  7. NVIDIA vGPU应用
  8. Zblog模板调用标签情况说明
  9. linux 播放mkv视频,Fedora 22 怎么播放 rmvb mp4 mkv 视频文件
  10. 单位旧计算机处理,单位出售旧电脑增值税税率是多少?