微信支付 java 服务端demo (v3版本app支付 springMVC框架中)

由于微信官方没有app支付后台demo,前天公司要对接微信支付,经过这两天在网上找的资料以及结合官方文档,今天开发和测试终于顺利收尾,本篇文章仅包含微信app支付v3版本 java后台代码片段,andriod和ios请在官网查看
摘要由CSDN通过智能技术生成
//静态资源

/** 
 * @author 徐小骥
 * @version :2016-5-9 上午11:43:48 
 */

public class WeixinPayConstants {
	public static final String appid = "XXXXXX";//在微信开发平台登记的app应用
	public static final String appsecret = "XXXXXXXXX";
	public static final String partner = "XXXXXXXXX";//商户号
	public static final String partnerkey ="XXXXXXXXXXXXXXXXXXXXXXXXXXXXX";//不是商户登录密码,是商户在微信平台设置的32位长度的api秘钥,
	public static final String createOrderURL="https://api.mch.weixin.qq.com/pay/unifiedorder";
	public static final String backUri="http://XXXXXXXX/api/weixin/topay.jhtml";//微信支付下单地址
	public static final String notify_url="http://XXXXXXXXXX/api/weixin/notify.jhtml";//异步通知地址
}

//

/** 
 * @author 徐小骥
 * @version :2016-5-9 上午11:46:48 
 */
@Controller("weixinPayController")
@RequestMapping("/api/weixin")
public class WeixinPayController {
@Resource(name = "memberServiceImpl")
private MemberService memberService;
@Resource(name = "orderServiceImpl")
private RecordsConsumptionService  recordsConsumptionService;
//商户相关资料 
private static String appid = WeixinPayConstants.appid;
private static String appsecret = WeixinPayConstants.appsecret;
private static String partner = WeixinPayConstants.partner;
private static String partnerkey = WeixinPayConstants.partnerkey;
@RequestMapping(value = "/topay") 
@ResponseBody public void topay(HttpServletRequest request,HttpServletResponse response) throws Exception{
	request.setCharacterEncoding("UTF-8");
	response.setCharacterEncoding("UTF-8");
	response.setContentType("text/html;charset=UTF-8");
	String orderNo= request.getParameter("Orderid");
	String mobile= request.getParameter("mobile");
	PrintWriter out = response.getWriter();
	String json=null;
     JSONObject retMsgJson=new JSONObject();
	if(orderNo==null||mobile==null){
		retMsgJson.put("msg", "error");
		retMsgJson.put("body", "数据请求异常");
		json=retMsgJson.toString();					
	    out.write(json);
	    out.close();
	    return;
	}
	Member member=memberService.findListByMobile(mobile);//获取用户数据
	Order order=orderService.find(Long.valueOf(orderNo));//获取订单数据
     //验证订单与支付会员关系
     if(member==null||order==null){
		retMsgJson.put("msg", "error");
		retMsgJson.put("body", "数据请求异常");
		json=retMsgJson.toString();					
	  
  • 6
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 27
    评论
Spring MVC 是一个基于Java框架,用于构建Web应用程序。Spring的特性包括依赖注入、切面编程等。微信支付 V3微信支付的最新版本,它为商家提供了更好的体验和更高的安全性。退款是在客户发生问题或商家必须解决问题时,将付款金额退回到客户账户的一种方式,而 BinaryWang 是一个开发团队,专注于微信开发和开源工具,其提供了一些与微信支付相关的Java工具类库。 采用Spring MVC开发微信支付 V3 的退款功能可以带来许多优势。Spring MVC框架提供了丰富的工具,包括文件上传、JSON 数据绑定、RESTful方案等,可以极大地简化开发工作。另外,使用Spring的依赖注入来管理支付的服务可以大大提高代码的可维护性和可扩展性。同时,由于退款功能涉及到安全性问题,使用Spring的切面编程可以轻松地实现安全审计、日志记录等功能,使得退款操作更加安全和可靠。 而 BinaryWang 提供的微信支付V3 Java工具类库,可以极大地简化开发者的支付流程。该工具类库提供了支持签名和验签功能的API,可以方便地处理交易数据,并支持自动转换格式。除此之外,该工具类库提供的API还支持查询订单状态、退款查询、下载交易数据等等,使得开发者能够更轻松地实现微信支付的功能,同时保证了支付安全性和可靠性。 总之,采用Spring MVC微信支付V3的退款功能,结合 BinaryWang 提供的Java工具类库,可以使开发者更加轻松地实现退款功能,并保证了支付的安全性和可靠性。
评论 27
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值