当前位置: 首页 > news >正文

免费网站推广在线观看/百度seo快速排名优化

免费网站推广在线观看,百度seo快速排名优化,广州番禺网站建设工作室,湖北城乡建设网站下面为你详细介绍使用 Spring Boot 对接支付宝支付&#xff0c;实现支付与退款功能的具体步骤和代码示例。 添加依赖 在 pom.xml 里添加支付宝 SDK 依赖&#xff1a; <dependencies><!-- Spring Boot Web --><dependency><groupId>org.springframewo…

下面为你详细介绍使用 Spring Boot 对接支付宝支付,实现支付与退款功能的具体步骤和代码示例。

  1. 添加依赖
    在 pom.xml 里添加支付宝 SDK 依赖:
<dependencies><!-- Spring Boot Web --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- 支付宝 SDK --><dependency><groupId>com.alipay.sdk</groupId><artifactId>alipay-sdk-java</artifactId><version>4.10.103.ALL</version></dependency>
</dependencies>
  1. 配置支付宝信息
    在 application.yml 中配置支付宝相关信息:
alipay:app-id: your_app_idmerchant-private-key: your_merchant_private_keyalipay-public-key: your_alipay_public_keysign-type: RSA2gateway-url: https://openapi.alipay.com/gateway.donotify-url: your_notify_url
  1. 配置支付宝客户端
    创建配置类来初始化支付宝客户端:
import com.alipay.api.AlipayClient;
import com.alipay.api.DefaultAlipayClient;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class AlipayConfig {@Value("${alipay.app-id}")private String appId;@Value("${alipay.merchant-private-key}")private String merchantPrivateKey;@Value("${alipay.alipay-public-key}")private String alipayPublicKey;@Value("${alipay.sign-type}")private String signType;@Value("${alipay.gateway-url}")private String gatewayUrl;@Beanpublic AlipayClient alipayClient() {return new DefaultAlipayClient(gatewayUrl, appId, merchantPrivateKey, "json", "UTF-8", alipayPublicKey, signType);}
}
  1. 实现支付功能
    创建服务类来处理支付业务逻辑:
import com.alipay.api.AlipayApiException;
import com.alipay.api.AlipayClient;
import com.alipay.api.request.AlipayTradePagePayRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;@Service
public class AlipayService {@Autowiredprivate AlipayClient alipayClient;@Value("${alipay.notify-url}")private String notifyUrl;public String pay(String outTradeNo, String totalAmount, String subject, String body) throws AlipayApiException {AlipayTradePagePayRequest request = new AlipayTradePagePayRequest();request.setReturnUrl(null);request.setNotifyUrl(notifyUrl);request.setBizContent("{\"out_trade_no\":\"" + outTradeNo + "\","+ "\"total_amount\":\"" + totalAmount + "\","+ "\"subject\":\"" + subject + "\","+ "\"body\":\"" + body + "\","+ "\"product_code\":\"FAST_INSTANT_TRADE_PAY\"}");return alipayClient.pageExecute(request).getBody();}
}
  1. 实现退款功能
    在服务类中添加退款方法:
import com.alipay.api.AlipayApiException;
import com.alipay.api.AlipayClient;
import com.alipay.api.request.AlipayTradeRefundRequest;
import com.alipay.api.response.AlipayTradeRefundResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;@Service
public class AlipayService {@Autowiredprivate AlipayClient alipayClient;public AlipayTradeRefundResponse refund(String outTradeNo, String refundAmount) throws AlipayApiException {AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();request.setBizContent("{\"out_trade_no\":\"" + outTradeNo + "\","+ "\"refund_amount\":\"" + refundAmount + "\"}");return alipayClient.execute(request);}
}
  1. 创建控制器
    创建控制器来处理支付和退款请求:
import com.alipay.api.AlipayApiException;
import com.alipay.api.response.AlipayTradeRefundResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;import javax.servlet.http.HttpServletResponse;
import java.io.IOException;@RestController
@RequestMapping("/alipay")
public class AlipayController {@Autowiredprivate AlipayService alipayService;@GetMapping("/pay")public void pay(@RequestParam String outTradeNo, @RequestParam String totalAmount, @RequestParam String subject, @RequestParam String body, HttpServletResponse response) throws AlipayApiException, IOException {String form = alipayService.pay(outTradeNo, totalAmount, subject, body);response.setContentType("text/html;charset=" + "UTF-8");response.getWriter().write(form);response.getWriter().flush();response.getWriter().close();}@GetMapping("/refund")public AlipayTradeRefundResponse refund(@RequestParam String outTradeNo, @RequestParam String refundAmount) throws AlipayApiException {return alipayService.refund(outTradeNo, refundAmount);}
}

代码解释
依赖添加:引入 Spring Boot Web 和支付宝 SDK 依赖,以支持 Web 开发和支付宝支付功能。
配置信息:在 application.yml 中配置支付宝所需的关键信息,如应用 ID、商户私钥、支付宝公钥等。
支付宝客户端配置:创建 AlipayConfig 类初始化支付宝客户端。
支付服务类:AlipayService 类包含支付和退款的业务逻辑,调用支付宝客户端的方法完成相应操作。
控制器:AlipayController 处理前端的支付和退款请求,调用服务类的方法完成支付和退款操作。
注意事项
要保证私钥和公钥的正确性与安全性。
处理支付和退款回调时,要对签名进行验证,防止数据被篡改。
严格按照支付宝的开发文档进行开发,及时处理可能出现的异常情况。

http://www.cadmedia.cn/news/257.html

相关文章:

  • phpcms移动端网站怎么做/优化公司流程制度
  • 网站后台更新 前台为啥没反应/百度广告管家
  • 2017做那个网站致富/网站推广策略有哪些
  • 做健身推广网站/泰州seo外包公司
  • 乌海网站制作/如何注册网站平台
  • 醴陵市城乡和规划建设局网站/百度指数数据分析
  • wordpress域名如何申请/seo如何优化网站推广
  • 怎么做微信钓鱼网站/百度权重域名
  • 2022年中央经济工作会议/南京关键词seo公司
  • 网站开发开题报告/最近一周的时政热点新闻
  • 深圳精品网站设计/公司网络推广服务
  • 网站建设技术员/软件推广
  • 关键词排名是由什么决定的/搜狗搜索引擎优化
  • 做建筑设计的网站推荐/头条新闻最新消息
  • b2b网站权重/做好的网站怎么优化
  • 有些网站为什么可以做资讯/免费b2b网站大全免费
  • 天河网站 建设信科网络/网站网络推广运营
  • o2o网站建设如何/今日头条网页版入口
  • 衡水seo优化/江门关键词排名优化
  • 网站一般做哪些测试/域名搜索引擎入口
  • 网站数据分析建设/想卖产品怎么推广宣传
  • 福田所有车型/网站seo搜索引擎优化怎么做
  • wordpress仿站教程百度云/网店推广运营策略
  • 大型餐饮网站建设/郑州做网站推广
  • 什么是三合一网站建设/域名在线查询
  • 北京做网站建设公司/天津seo管理平台
  • 每天干每天做网站/危机公关处理
  • 广西高端网站建设/2020十大网络热词
  • 东莞网站建设设计/交换链接是什么
  • b2b网站用织梦可以做吗/如何自己做网络推广