资源简介
使用Javaweb实现的微信支付demo,只需要修改src->util->PayConfig文件里的配置即可
代码片段和文件信息
package action;
import java.awt.image.BufferedImage;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Random;
import java.util.SortedMap;
import java.util.TreeMap;
import javax.imageio.ImageIO;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import util.PayConfig;
import util.PayUtil;
import util.RandomUtil;
import util.SignUtil;
import util.xmlUtil;
import util.ZxingUtil;
@WebServlet(“/payment/*“)
public class PayServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request HttpServletResponse response) throws ServletException IOException {
doPost(request response);
}
protected void doPost(HttpServletRequest request HttpServletResponse response) throws ServletException IOException {
request.setCharacterEncoding(“UTF-8“);
String requestURI=request.getRequestURI();//获取请求路径
int start = requestURI.lastIndexOf(“/“);
String reqStr=requestURI.substring(start + 1);
if(“pay“.equals(reqStr)){
doPay(requestresponse);
}else if(“image“.equals(reqStr)){
doImage(requestresponse);
}else if(“result“.equals(reqStr)){
try {
wxNotify(requestresponse);
} catch (Exception e) {
System.err.println(“通知出错了:“+e);
}
}
}
private void doPay(HttpServletRequest request HttpServletResponse response) {
String body=“支付测试“; //商品描述
String total_fee=“1“; //商品价格默认单位为“分”
String out_trade_no=RandomUtil.createOrderId(4); //商品订单号
try {
//获取二维码字符串
String result=PayUtil.getPayURL( body out_trade_no total_fee );
//将字符串转换为二维码
BufferedImage image = ZxingUtil.createImage(result 300 300);
//将二维码放到session里
request.getSession().setAttribute(“image“ image);
//将订单号放到session里
request.getSession().setAttribute(“out_trade_no“ out_trade_no);
//跳转页面
response.sendRedirect(“../ercode.jsp“);
} catch (Exception e) {
e.printStackTrace();
}
}
private void doImage(HttpServletRequest request HttpServletResponse response) throws IOException {
System.out.println(“进来了...“);
BufferedImage image = (BufferedImage) request.getSession().getAttribute(“image“);
if (image != null) {
ImageIO.write(image“JPEG“response.getOutputStream());
}
}
/**
* 解析微信返回的支付结果
* @param request
* @param response
* @throws Exception
*/
public void wxNotify(HttpServletRequest requestHttpServletResponse response) throws Exception{
//读取参数
InputStream inputStream ;
StringB
相关资源
- 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中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
- Java 文件加密传输
- java做的房产管理系统
- 基于jsp的bbs论坛 非常详细
- [免费]java实现有障碍物的贪吃蛇游戏
- java Servlet投票实例
评论
共有 条评论