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

代码片段和文件信息
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源码,servlet+jsp),适
- java串口通信全套完整代码-导入eclip
- 美食天下项目Android版源码和Web版源码
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- 个人根据Android移动开发案例详解手写
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
- Java 文件加密传输
评论
共有 条评论