{"id":19329126,"url":"https://github.com/hello-java-maker/sihai-maven-ssm-alipay","last_synced_at":"2025-04-12T23:39:34.453Z","repository":{"id":43637166,"uuid":"138134260","full_name":"hello-java-maker/sihai-maven-ssm-alipay","owner":"hello-java-maker","description":"阿里支付宝支付和微信支付，包括：阿里沙箱环境支付宝测试demo，支付宝支付整合到spring+springmvc+mybatis环境和微信整合到如上环境，功能非常齐全，只需要修改对应的配置文件即可，帮助文档齐全！","archived":false,"fork":false,"pushed_at":"2021-07-24T02:40:20.000Z","size":113,"stargazers_count":751,"open_issues_count":6,"forks_count":406,"subscribers_count":36,"default_branch":"master","last_synced_at":"2025-04-12T23:39:30.349Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hello-java-maker.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-06-21T07:20:46.000Z","updated_at":"2025-03-12T04:46:05.000Z","dependencies_parsed_at":"2022-09-10T19:30:15.846Z","dependency_job_id":null,"html_url":"https://github.com/hello-java-maker/sihai-maven-ssm-alipay","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hello-java-maker%2Fsihai-maven-ssm-alipay","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hello-java-maker%2Fsihai-maven-ssm-alipay/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hello-java-maker%2Fsihai-maven-ssm-alipay/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hello-java-maker%2Fsihai-maven-ssm-alipay/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hello-java-maker","download_url":"https://codeload.github.com/hello-java-maker/sihai-maven-ssm-alipay/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248647255,"owners_count":21139081,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-10T02:26:46.111Z","updated_at":"2025-04-12T23:39:34.433Z","avatar_url":"https://github.com/hello-java-maker.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"## 支付宝支付、微信支付等第三方支付方式项目推荐\n\n今天更新一下这个github，主要是加入一些优质的第三方支付的项目，一些是可以快速的集成到项目中，一些是可以作为学习第三方支付的项目，希望对大家有帮助。\n\n- [一个Github项目搞定微信、QQ、支付宝等第三方登录](https://mp.weixin.qq.com/s/CrnicXHoaPGr5DBCPwZOQg)\n- [推荐多个第三方支付的项目，包括微信支付、支付宝支付等主流支付系统](https://mp.weixin.qq.com/s/GiCVeo1QY3Mqx-0R2rLqdA)\n\n## JavaInterview：Java面试+Java后端技术学习指南\n\n【Java面试+Java后端技术学习指南】：一份通向理想互联网公司的面试指南，包括 Java，技术面试必备基础知识、Leetcode、计算机操作系统、计算机网络、系统设计、分布式、数据库（MySQL、Redis）、Java 项目实战等\n\n- https://github.com/hello-java-maker/JavaInterview\n\n## SSM项目引入文档目录\n\n- 支付宝沙箱环境测试demo\n- 支付宝整合到ssm环境\n- 微信支付整合到ssm环境\n\n\n### 一、支付宝测试环境代码测试\n\n#### 1.下载电脑网站的官方demo：\n\n下载地址：https://docs.open.alipay.com/270/106291/\n\n![image](http://images2017.cnblogs.com/blog/913181/201711/913181-20171104154517076-1543882391.png)\n\n#### 2.下载解压导入eclipse\n\n![image](http://images2017.cnblogs.com/blog/913181/201711/913181-20171104154518748-1355167243.png)\n\nreadme.txt请好好看一下。\n\n只有一个Java配置类，其余都是JSP。\n\n#### 3.配置AlipayConfig\n\n(1).注册蚂蚁金服开发者账号（免费，不像苹果会收取费用）\n\n注册地址：https://open.alipay.com ，用你的支付宝账号扫码登录，完善个人信息，选择服务类型（我选的是自研）。\n\n![image](http://images2017.cnblogs.com/blog/913181/201711/913181-20171104154521091-559671439.png)\n\n(2).设置app_id和gatewayUrl\n\n![image](http://images2017.cnblogs.com/blog/913181/201711/913181-20171104154523420-1165043884.png)\n\n![image](http://images2017.cnblogs.com/blog/913181/201711/913181-20171104154525998-1945276837.png)\n\n其中密钥需要自己生成，appID和支付宝网关是已经给好的，网关有dev字样，表明是用于开发测试。\n\n(3).设置密钥\n\n![image](http://images2017.cnblogs.com/blog/913181/201711/913181-20171104154527795-74942620.png)\n\n点击“生成方法”，打开界面如下：\n\n![image](http://images2017.cnblogs.com/blog/913181/201711/913181-20171104154529482-463775295.png)\n\n下周密钥生成工具，解压打开后，选择2048位生成密钥：\n\n![image](http://images2017.cnblogs.com/blog/913181/201711/913181-20171104155721716-114991997.png)\n\n如果没有设置过，此时显示文本是“设置应用公钥”，我这里是已经设置过得。\n\n![image](http://images2017.cnblogs.com/blog/913181/201711/913181-20171104154532888-1699829873.png)\n\n设置方法,“打开密钥文件路径”：\n\n![image](http://images2017.cnblogs.com/blog/913181/201711/913181-20171104155723091-1059236432.png)\n\n![image](https://images2017.cnblogs.com/blog/913181/201711/913181-20171104154536326-1505768047.png)\n\n复制应用公钥2048.txt中的内容到点击“设置应用公钥”的弹出框中，保存：\n\n![image](http://images2017.cnblogs.com/blog/913181/201711/913181-20171104155724529-560291030.png)\n\n- 商户私钥（merchant_private_key）\n\n     复制 应用私钥2048.txt 中的内容到merchant_private_key中。\n\n- 支付宝公钥（alipay_public_key）\n\n![image](http://images2017.cnblogs.com/blog/913181/201711/913181-20171104154537920-690623311.png)\n\n   点击如上图链接，复制弹出框里面的内容到alipay_public_key。\n\n   如果这个设置不对，结果是：支付成功，但是验签失败。\n\n  如果是正式环境，需要上传到对应的应用中：\n\n![image](http://images2017.cnblogs.com/blog/913181/201711/913181-20171104154539248-1117011503.png)\n\n(4).服务器异步通知页面路径（notify_url）\n\n如果没有改名，修改IP和端口号就可以了，我自己的如下:\n\n```\nhttp://localhost:8080/alipay.trade.page.pay-JAVA-UTF-8/notify_url.jsp\n```\n\n(5).页面跳转同步通知页面路径（return_url）\n\n```\nhttp://localhost:8080/alipay.trade.page.pay-JAVA-UTF-8/return_url.jsp\n```\n\n#### 4.测试运行\n\n![image](https://img-blog.csdn.net/20180620154857896?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpaGFpMTIzNDU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)\n\n![image](https://img-blog.csdn.net/20180620154907328?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpaGFpMTIzNDU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)\n\n\n\n测试用的支付宝买家账户可以在“沙箱账号”这个页面可以找到：\n\n![image](http://images2017.cnblogs.com/blog/913181/201711/913181-20171104154546045-990881709.png)\n\n支付成功后，验签结果：\n\n![image](http://images2017.cnblogs.com/blog/913181/201711/913181-20171104154547279-197713081.png)\n\n\n#### 问题解决\n由于我们使用的是沙箱测试环境，测试环境和正式上线的环境的**网关**是不一样的，如果配置错误，会出现，appid错误的问题。配置如下：\n![这里写图片描述](https://img-blog.csdn.net/20180620170947435?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpaGFpMTIzNDU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)\n\n\n\n\n\n### 二、将支付宝支付整合到ssm框架\n\n#### 1、项目架构\n![这里写图片描述](https://img-blog.csdn.net/20180620155335825?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpaGFpMTIzNDU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)\n\n- 项目架构：spring+springmvc+mybatis\n- 数据库：mysql\n- 部署环境：tomcat9.0\n- 开发环境：jdk9、idea\n- 支付：支付宝、微信\n\n\n整合到ssm一样，我们需要像沙箱测试环境一样，需要修改**支付的配置信息**\n![这里写图片描述](https://img-blog.csdn.net/20180620170214281?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpaGFpMTIzNDU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)\n\n#### 2、数据库代码\n\n主要包括以下的数据库表：\n\n- user：用户表\n- order：支付产生的订单\n- flow：流水账\n- product：商品表：用于模拟购买商品。\n```\ndrop table if exists user;\n\n/*==============================================================*/\n/* Table: user                                                  */\n/*==============================================================*/\ncreate table user\n(\n   id                   varchar(20) not null,\n   username             varchar(128),\n   sex                  varchar(20),\n   primary key (id)\n);\n\nalter table user comment '用户表';\n\n\nCREATE TABLE `flow` (\n  `id` varchar(20) NOT NULL,\n  `flow_num` varchar(20) DEFAULT NULL COMMENT '流水号',\n  `order_num` varchar(20) DEFAULT NULL COMMENT '订单号',\n  `product_id` varchar(20) DEFAULT NULL COMMENT '产品主键ID',\n  `paid_amount` varchar(11) DEFAULT NULL COMMENT '支付金额',\n  `paid_method` int(11) DEFAULT NULL COMMENT '支付方式\\r\\n            1：支付宝\\r\\n            2：微信',\n  `buy_counts` int(11) DEFAULT NULL COMMENT '购买个数',\n  `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n  PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='流水表';\n\n\nCREATE TABLE `orders` (\n  `id` varchar(20) NOT NULL,\n  `order_num` varchar(20) DEFAULT NULL COMMENT '订单号',\n  `order_status` varchar(20) DEFAULT NULL COMMENT '订单状态\\r\\n            10：待付款\\r\\n            20：已付款',\n  `order_amount` varchar(11) DEFAULT NULL COMMENT '订单金额',\n  `paid_amount` varchar(11) DEFAULT NULL COMMENT '实际支付金额',\n  `product_id` varchar(20) DEFAULT NULL COMMENT '产品表外键ID',\n  `buy_counts` int(11) DEFAULT NULL COMMENT '产品购买的个数',\n  `create_time` datetime DEFAULT NULL COMMENT '订单创建时间',\n  `paid_time` datetime DEFAULT NULL COMMENT '支付时间',\n  PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='订单表';\n\n\nCREATE TABLE `product` (\n  `id` varchar(20) NOT NULL,\n  `name` varchar(20) DEFAULT NULL COMMENT '产品名称',\n  `price` varchar(11) DEFAULT NULL COMMENT '价格',\n  PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='产品表 ';\n\n\n```\n\n#### 3、dao数据接口层\n\n这里就不介绍了，这个只包括简单的curd，可以使用`通用mapper`，或者`逆向工程`就行。\n\n以订单order为例给出：\n\n```\n\npublic interface OrdersMapper {\n    int countByExample(OrdersExample example);\n\n    int deleteByExample(OrdersExample example);\n\n    int deleteByPrimaryKey(String id);\n\n    int insert(Orders record);\n\n    int insertSelective(Orders record);\n\n    List\u003cOrders\u003e selectByExample(OrdersExample example);\n\n    Orders selectByPrimaryKey(String id);\n\n    int updateByExampleSelective(@Param(\"record\") Orders record, @Param(\"example\") OrdersExample example);\n\n    int updateByExample(@Param(\"record\") Orders record, @Param(\"example\") OrdersExample example);\n\n    int updateByPrimaryKeySelective(Orders record);\n\n    int updateByPrimaryKey(Orders record);\n}\n```\n\n**注意：**源代码最后给出。\n\n#### 4、service层\n\n同上，最后在项目源代码里可见。\n\n以订单order为例给出：\n\n```\n\n\n/**\n * 订单操作 service\n * @author ibm\n *\n */\npublic interface OrdersService {\n\n\t/**\n\t * 新增订单\n\t * @param order\n\t */\n\tpublic void saveOrder(Orders order);\n\t\n\t/**\n\t * \n\t * @Title: OrdersService.java\n\t * @Package com.sihai.service\n\t * @Description: 修改叮当状态，改为 支付成功，已付款; 同时新增支付流水\n\t * Copyright: Copyright (c) 2017\n\t * Company:FURUIBOKE.SCIENCE.AND.TECHNOLOGY\n\t * \n\t * @author sihai\n\t * @date 2017年8月23日 下午9:04:35\n\t * @version V1.0\n\t */\n\tpublic void updateOrderStatus(String orderId, String alpayFlowNum, String paidAmount);\n\t\n\t/**\n\t * 获取订单\n\t * @param orderId\n\t * @return\n\t */\n\tpublic Orders getOrderById(String orderId);\n\t\n}\n\n```\n\n#### 4、支付宝支付controller（支付流程）\n\n**支付流程图**\n![这里写图片描述](https://img-blog.csdn.net/20180620165147752?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpaGFpMTIzNDU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)\n\n首先，启动项目后，输入http://localhost:8080/,会进入到商品页面，如下：\n![这里写图片描述](https://img-blog.csdn.net/20180620160715724?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpaGFpMTIzNDU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)\n\n下面是页面代码\n\n**商品页面（products.jsp）**\n![这里写图片描述](https://img-blog.csdn.net/20180620160814279?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpaGFpMTIzNDU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)\n\n```\n\u003c%@ page language=\"java\" contentType=\"text/html; charset=UTF-8\" pageEncoding=\"UTF-8\"%\u003e\n\u003c%@ taglib prefix=\"c\" uri=\"http://java.sun.com/jsp/jstl/core\" %\u003e\n\u003c%@ taglib uri=\"http://java.sun.com/jsp/jstl/functions\" prefix=\"fn\" %\u003e  \n\u003cscript src=\"\u003c%=request.getContextPath() %\u003e/static/js/jquery.min.js\" type=\"text/javascript\"\u003e\u003c/script\u003e\n\n\u003chtml\u003e\n\n    \u003chead\u003e\n        \n    \u003c/head\u003e\n    \n    \u003cbody\u003e\n        \n        \u003ctable\u003e\n        \t\u003ctr\u003e\n        \t\t\u003ctd\u003e\n        \t\t\t产品编号\n        \t\t\u003c/td\u003e\n        \t\t\u003ctd\u003e\n        \t\t\t产品名称\n        \t\t\u003c/td\u003e\n        \t\t\u003ctd\u003e\n        \t\t\t产品价格\n        \t\t\u003c/td\u003e\n        \t\t\u003ctd\u003e\n        \t\t\t操作\n        \t\t\u003c/td\u003e\n        \t\u003c/tr\u003e\n\t        \u003cc:forEach items=\"${pList }\" var=\"p\"\u003e\n\t        \t\u003ctr\u003e\n\t        \t\t\u003ctd\u003e\n\t        \t\t\t${p.id }\n\t        \t\t\u003c/td\u003e\n\t        \t\t\u003ctd\u003e\n\t        \t\t\t${p.name }\n\t        \t\t\u003c/td\u003e\n\t        \t\t\u003ctd\u003e\n\t        \t\t\t${p.price }\n\t        \t\t\u003c/td\u003e\n\t        \t\t\u003ctd\u003e\n\t        \t\t\t\u003ca href=\"\u003c%=request.getContextPath() %\u003e/alipay/goConfirm.action?productId=${p.id }\"\u003e购买\u003c/a\u003e\n\t        \t\t\u003c/td\u003e\n\t        \t\u003c/tr\u003e\n\t        \t\n\t        \u003c/c:forEach\u003e\n        \u003c/table\u003e\n        \n        \u003cinput type=\"hidden\" id=\"hdnContextPath\" name=\"hdnContextPath\" value=\"\u003c%=request.getContextPath() %\u003e\"/\u003e\n    \u003c/body\u003e\n    \n\u003c/html\u003e\n\n\n\u003cscript type=\"text/javascript\"\u003e\n\n\t$(document).ready(function() {\n\t\t\n\t\tvar hdnContextPath = $(\"#hdnContextPath\").val();\n\t\t\n\t\t\n\t});\n\t\n\n\u003c/script\u003e\n\n\n```\n\n点击上面的**购买**，进入到**订单页面**\n\n![这里写图片描述](https://img-blog.csdn.net/20180620161120463?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpaGFpMTIzNDU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)\n\n\n填写**个数**，然后点击**生成订单**，调用如下代码\n\n![这里写图片描述](https://img-blog.csdn.net/20180620161348895?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpaGFpMTIzNDU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)\n根据`SID`（生成id的工具）等信息生成订单，保存到数据库。\n\n进入到**选择支付页面**\n\n![这里写图片描述](https://img-blog.csdn.net/20180620161452619?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpaGFpMTIzNDU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)\n\n调用了如下代码：\n\n![这里写图片描述](https://img-blog.csdn.net/20180620161534326?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpaGFpMTIzNDU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)\n\n\n然后，我们选择**支付宝支付**，进入到了我们支付的页面了，大功告成！\n![这里写图片描述](https://img-blog.csdn.net/201806201616503?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3NpaGFpMTIzNDU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)\n\n调用了如下代码：\n\n```\n/**\n\t *\n\t * @Title: AlipayController.java\n\t * @Package com.sihai.controller\n\t * @Description: 前往支付宝第三方网关进行支付\n\t * Copyright: Copyright (c) 2017\n\t * Company:FURUIBOKE.SCIENCE.AND.TECHNOLOGY\n\t *\n\t * @author sihai\n\t * @date 2017年8月23日 下午8:50:43\n\t * @version V1.0\n\t */\n\t@RequestMapping(value = \"/goAlipay\", produces = \"text/html; charset=UTF-8\")\n\t@ResponseBody\n\tpublic String goAlipay(String orderId, HttpServletRequest request, HttpServletRequest response) throws Exception {\n\n\t\tOrders order = orderService.getOrderById(orderId);\n\n\t\tProduct product = productService.getProductById(order.getProductId());\n\n\t\t//获得初始化的AlipayClient\n\t\tAlipayClient alipayClient = new DefaultAlipayClient(AlipayConfig.gatewayUrl, AlipayConfig.app_id, AlipayConfig.merchant_private_key, \"json\", AlipayConfig.charset, AlipayConfig.alipay_public_key, AlipayConfig.sign_type);\n\n\t\t//设置请求参数\n\t\tAlipayTradePagePayRequest alipayRequest = new AlipayTradePagePayRequest();\n\t\talipayRequest.setReturnUrl(AlipayConfig.return_url);\n\t\talipayRequest.setNotifyUrl(AlipayConfig.notify_url);\n\n\t\t//商户订单号，商户网站订单系统中唯一订单号，必填\n\t\tString out_trade_no = orderId;\n\t\t//付款金额，必填\n\t\tString total_amount = order.getOrderAmount();\n\t\t//订单名称，必填\n\t\tString subject = product.getName();\n\t\t//商品描述，可空\n\t\tString body = \"用户订购商品个数：\" + order.getBuyCounts();\n\n\t\t// 该笔订单允许的最晚付款时间，逾期将关闭交易。取值范围：1m～15d。m-分钟，h-小时，d-天，1c-当天（1c-当天的情况下，无论交易何时创建，都在0点关闭）。 该参数数值不接受小数点， 如 1.5h，可转换为 90m。\n    \tString timeout_express = \"1c\";\n\n\t\talipayRequest.setBizContent(\"{\\\"out_trade_no\\\":\\\"\"+ out_trade_no +\"\\\",\"\n\t\t\t\t+ \"\\\"total_amount\\\":\\\"\"+ total_amount +\"\\\",\"\n\t\t\t\t+ \"\\\"subject\\\":\\\"\"+ subject +\"\\\",\"\n\t\t\t\t+ \"\\\"body\\\":\\\"\"+ body +\"\\\",\"\n\t\t\t\t+ \"\\\"timeout_express\\\":\\\"\"+ timeout_express +\"\\\",\"\n\t\t\t\t+ \"\\\"product_code\\\":\\\"FAST_INSTANT_TRADE_PAY\\\"}\");\n\n\t\t//请求\n\t\tString result = alipayClient.pageExecute(alipayRequest).getBody();\n\n\t\treturn result;\n\t}\n```\n\n这段代码都可以在阿里支付的demo里面找到的，只需要复制过来，然后改改，整合到ssm环境即可。\n\n\n上面就是将阿里支付宝支付整合到ssm的全过程了，如果还有什么疑问，可以留言或者私信我！\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhello-java-maker%2Fsihai-maven-ssm-alipay","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhello-java-maker%2Fsihai-maven-ssm-alipay","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhello-java-maker%2Fsihai-maven-ssm-alipay/lists"}