资源简介
通过第三方支付公司与银行对接:
这种方式接方式的优缺点:
优点:系统只需要与第三方支付公司打交道,第三方支付公司根据用户选择的支付银行,并根据支付银行的接入规范,引导用户与银行对接,从而实现支付。此种方案最大的优点,系统只需要与第三方支付公司交互,开发工作量极低。
缺点:由于通过第三方支付公司引导用户支付的,所以用户支付的钱会支付给第三方支付公司,网站再与第三方支付公司定期进行资金结算。所以如果金额较大,资金安全是个大问题。并且这种支付模型也会收取一定的手续费,因此此种支付方案只适合月金额在百万以下的公司。
代码片段和文件信息
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\.myme
文件 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\me
文件 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.xm
目录 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个文件信息
相关资源
- 推箱子java实现源码
- Java实现图结点着色图形化演示
- 网上购买的传智播客Java就业班之手机
- java实现小型图书管理系统
- 电器商城小系统 java
- 简单的人机对话java
- Java电子词典源程序
- java网络抓包(Jpcap0.7的教程 程序 源码
- java web 实现 调查问卷带数据库
- Java教学管理系统课程设计报告+源码
- JAVA MyLine
- 基于JAVA聊天系统的开题报告
- mysql驱动文件mysql-connector-java-5.0.4-bi
- JAVA加密MD5源代码
- zxing-3.1.0.jar和zxing-javase-3.1.0.jar
- 遗传算法GeneticAlgorithm的Java实现源码工
- Java AES文件和文本加解密
- java实现的中文词性标注算法
- 剑指offer(java版).pdf
- Scalable IO in Java -Doug Lea
- Eclipse开发Web项目
- java权限系统概要设计说明书
- 用java实现的简易型科学计算器
- javax.annotation
- 英汉小字典Java课程设计
- 将一段文字转化为哈夫曼编码JAVA实现
- 档案管理系统 源代码+数据库
- java的fastjson.jar包
- Java 利用poi 导出excel 工具类,超实用
- 广工JAVA作业报告
评论
共有 条评论