700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > java 支付宝帐单_支付宝单笔提现转账到个人用户 java代码实现

java 支付宝帐单_支付宝单笔提现转账到个人用户 java代码实现

时间:2020-12-19 15:47:00

相关推荐

java 支付宝帐单_支付宝单笔提现转账到个人用户 java代码实现

在工作上让要求写支付宝和微信的提现功能,支付宝我看了下很简单,唯独微信的有点麻烦,这篇文章写支付宝转账提现

从网上看,很多代码都是大同小异,其实也一样,最好还是看支付宝官方给的demo!

而在这里就遇到了一个坑,很多用的alipayClient.execute,而官方给的demo用的是alipayClient.certificateExecute,这里就要注意了,这个方法是需要证书才可以,否则会报错,平常的话用 alipayClient.execute 这个方法就可以了,只需要公钥即可,虽然不填写公钥也可以转账成功,但是会报错,这就是我很奇怪的地方了,难道支付宝没做好么??

/**

*支付宝账号向用户转账工具类(单例)

*@authorAdministrator

*

*/

publicclassAlipay{

//关联配置文件

privatestaticResourceManagerrm=ResourceManager.getInstance();

privatestaticStringgateway=rm.getValue("gateway");//支付宝网关

privatestaticStringappid=rm.getValue("appid");//阿里公共账户的id

privatestaticStringprivate_key=rm.getValue("private_key");//私钥

privatestaticStringinput_charset=rm.getValue("input_charset");//字段类型

privatestaticStringali_public_key=rm.getValue("ali_public_key");//公钥

privatestaticAlipayClientalipayClient;

privatestaticAlipayinstance=newAlipay();

privateAlipay(){

alipayClient=newDefaultAlipayClient(gateway,appid,private_key,"json",input_charset,ali_public_key,"RSA2");

}

publicstaticAlipaygetInstance(){

returninstance;

}

/**

*支付宝向用户转账

*@parambizNo逻辑单号

*@paramamount转账金额"1.21"单位元

*@paramaccount支付宝账号

*@paramuserName支付宝真实姓名

*@return

*/

publicMapalipay2User(StringbizNo,Stringamount,Stringaccount,StringuserName){

MapresultMap=newHashMap();

AlipayVovo=newAlipayVo();

vo.setOut_biz_no(bizNo);

vo.setPayee_type("ALIPAY_LOGONID");

vo.setAmount(amount);

vo.setPayee_account(account);

vo.setPayer_show_name(userName);

vo.setPayee_real_name(userName);

vo.setRemark("支付宝转账");

Stringjson=newGson().toJson(vo);

//设置请求参数

AlipayFundTransToaccountTransferRequestalipayRequest=newAlipayFundTransToaccountTransferRequest();

alipayRequest.setBizContent(json);

AlipayFundTransToaccountTransferResponseresponse=null;

try{

response=alipayClient.execute(alipayRequest);

System.out.println(JSON.toJSONString(response));

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

resultMap.put("success","true");

resultMap.put("des","转账成功");

}else{

resultMap.put("success","false");

resultMap.put("des",response.getSubMsg());

}

}catch(AlipayApiExceptione){

e.printStackTrace();

resultMap.put("success","false");

resultMap.put("des","转账失败!");

}

returnresultMap;

}

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。