• 大小: 18KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-06
  • 语言: Java
  • 标签: java  web  开发案例  

资源简介

通过第三方支付公司与银行对接: 这种方式接方式的优缺点: 优点:系统只需要与第三方支付公司打交道,第三方支付公司根据用户选择的支付银行,并根据支付银行的接入规范,引导用户与银行对接,从而实现支付。此种方案最大的优点,系统只需要与第三方支付公司交互,开发工作量极低。 缺点:由于通过第三方支付公司引导用户支付的,所以用户支付的钱会支付给第三方支付公司,网站再与第三方支付公司定期进行资金结算。所以如果金额较大,资金安全是个大问题。并且这种支付模型也会收取一定的手续费,因此此种支付方案只适合月金额在百万以下的公司。

资源截图

代码片段和文件信息

package cn.itcast.servlet;

import java.io.IOException;
import java.util.ResourceBundle;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import cn.itcast.utils.PaymentUtil;

/**
 * 接收付款结果的信息的
 * 
 * @author seawind
 * 
 */
public class CallbackServlet extends HttpServlet {

public void doGet(HttpServletRequest request HttpServletResponse response)
throws ServletException IOException {
// 1. 获得支付公司 发回 支付结果数据
String r0_Cmd = request.getParameter(“r0_Cmd“);
String r1_Code = request.getParameter(“r1_Code“);
String r2_TrxId = request.getParameter(“r2_TrxId“);
String r3_Amt = request.getParameter(“r3_Amt“);
String r4_Cur = request.getParameter(“r4_Cur“);
String r5_Pid = request.getParameter(“r5_Pid“);
String r6_Order = request.getParameter(“r6_Order“);
String r7_Uid = request.getParameter(“r7_Uid“);
String r8_MP = request.getParameter(“r8_MP“);
String r9_BType = request.getParameter(“r9_BType“);
String rb_BankId = request.getParameter(“rb_BankId“);
String ro_BankOrderId = request.getParameter(“ro_BankOrderId“);
String rp_PayDate = request.getParameter(“rp_PayDate“);
String rq_CardNo = request.getParameter(“rq_CardNo“);
String ru_Trxtime = request.getParameter(“ru_Trxtime“);
String hmac = request.getParameter(“hmac“);

// 2、验证支付公司身份
// 将所有数据加密一次获得 hmac 通过支付公司发来hmac比较
String p1_MerId = ResourceBundle.getBundle(“merchantInfo“).getString(
“p1_MerId“);
String keyValue = ResourceBundle.getBundle(“merchantInfo“).getString(
“keyValue“);
boolean result = PaymentUtil.verifyCallback(hmac p1_MerId r0_Cmd
r1_Code r2_TrxId r3_Amt r4_Cur r5_Pid r6_Order r7_Uid
r8_MP r9_BType keyValue);
if (result) {
// 验证成功
if (r9_BType.equals(“1“)) {
// 浏览器重定向 ,通知用户付款成功!
response.setContentType(“text/html;charset=utf-8“);
response.getWriter().println(“您已经支付成功!成功支付金额: “ + r3_Amt);
} else if (r9_BType.equals(“2“)) {
// 服务器点对点,易宝通知你
System.out.println(“服务器进行支付成功数据处理...“);
response.getWriter().println(“success“);
}
} else {
// 验证失败
System.out.println(“交易数据被篡改!“);
}
}

public void doPost(HttpServletRequest request HttpServletResponse response)
throws ServletException IOException {
doGet(request response);
}

}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        362  2012-05-24 16:30  day19pay\.classpath

     文件        297  2013-05-22 13:25  day19pay\.mymetadata

     文件       1414  2012-05-24 17:02  day19pay\.project

     文件        500  2012-05-24 16:30  day19pay\.settings\.jsdtscope

     文件         49  2012-05-24 16:30  day19pay\.settings\org.eclipse.wst.jsdt.ui.superType.container

     文件          6  2012-05-24 16:30  day19pay\.settings\org.eclipse.wst.jsdt.ui.superType.name

     文件       2565  2012-05-24 17:16  day19pay\src\cn\itcast\servlet\CallbackServlet.java

     文件       2521  2012-05-24 16:47  day19pay\src\cn\itcast\servlet\PayServlet.java

     文件       5833  2013-05-22 18:09  day19pay\src\cn\itcast\utils\PaymentUtil.java

     文件        146  2012-05-24 17:08  day19pay\src\merchantInfo.properties

     文件       1393  2012-05-24 16:49  day19pay\WebRoot\confirm.jsp

     文件       3232  2013-05-22 15:35  day19pay\WebRoot\gsyh.jpg

     文件        829  2012-05-24 16:30  day19pay\WebRoot\index.jsp

     文件         36  2012-05-24 16:30  day19pay\WebRoot\meta-INF\MANIFEST.MF

     文件       1806  2013-05-22 15:41  day19pay\WebRoot\pay.html

     文件       3038  2013-05-22 20:56  day19pay\WebRoot\WEB-INF\classes\cn\itcast\servlet\CallbackServlet.class

     文件       2579  2013-05-22 20:56  day19pay\WebRoot\WEB-INF\classes\cn\itcast\servlet\PayServlet.class

     文件       4583  2013-05-22 20:56  day19pay\WebRoot\WEB-INF\classes\cn\itcast\utils\PaymentUtil.class

     文件        146  2012-05-24 17:08  day19pay\WebRoot\WEB-INF\classes\merchantInfo.properties

     文件        919  2012-05-24 16:50  day19pay\WebRoot\WEB-INF\web.xml

     目录          0  2013-05-22 20:46  day19pay\WebRoot\WEB-INF\classes\cn\itcast\servlet

     目录          0  2013-05-22 20:46  day19pay\WebRoot\WEB-INF\classes\cn\itcast\utils

     目录          0  2013-05-22 20:46  day19pay\WebRoot\WEB-INF\classes\cn\itcast

     目录          0  2013-05-20 11:22  day19pay\src\cn\itcast\servlet

     目录          0  2013-05-20 11:22  day19pay\src\cn\itcast\utils

     目录          0  2013-05-22 20:46  day19pay\WebRoot\WEB-INF\classes\cn

     目录          0  2013-05-20 11:22  day19pay\src\cn\itcast

     目录          0  2013-05-22 20:56  day19pay\WebRoot\WEB-INF\classes

     目录          0  2012-05-24 17:34  day19pay\WebRoot\WEB-INF\lib

     目录          0  2013-05-20 11:22  day19pay\src\cn

............此处省略10个文件信息

评论

共有 条评论