多语言展示
当前在线:780今日阅读:176今日分享:34

java中微信支付其一

官方的微信支付demo刚开始没有运行,踏过无数坑总结一下,个人记录
方法/步骤
1

public class FileUtil { public static void mkdirs(String dir){ if(StringUtils.isEmpty(dir)){ return; } File file = new File(dir); if(file.isDirectory()){ return; } else { file.mkdirs(); } }}fileUtil主要是用来判断是否存在文件夹,如果 不存在则创建文件

2

public class HttpUtil {     private final static int CONNECT_TIMEOUT = 5000; // in milliseconds      private final static String DEFAULT_ENCODING = "UTF-8";             public static String postData(String urlStr, String data){          return postData(urlStr, data, null);    }           public static String postData(String urlStr, String data, String contentType){          BufferedReader reader = null;          try {              URL url = new URL(urlStr);              URLConnection conn = url.openConnection();

3

conn.setDoOutput(true);              conn.setConnectTimeout(CONNECT_TIMEOUT);              conn.setReadTimeout(CONNECT_TIMEOUT);              if(contentType != null)                  conn.setRequestProperty("content-type", contentType);              OutputStreamWriter writer = new OutputStreamWriter(conn.getOutputStream(), DEFAULT_ENCODING);              if(data == null)                  data = "";              writer.write(data);               writer.flush();              writer.close();

4

reader = new BufferedReader(new InputStreamReader(conn.getInputStream(), DEFAULT_ENCODING));              StringBuilder sb = new StringBuilder();              String line = null;              while ((line = reader.readLine()) != null) {                  sb.append(line);                  sb.append("\r\n");              }              return sb.toString();          } catch (IOException e) {              //logger.error("Error connecting to " + urlStr + ": " + e.getMessage());          } finally {              try {                  if (reader != null)                      reader.close();              } catch (IOException e) {              }          }          return null;      }   }

5

public class MD5Util { private static String byteArrayToHexString(byte b[]) {           StringBuffer resultSb = new StringBuffer();           for (int i = 0; i < b.length; i++)               resultSb.append(byteToHexString(b[i]));              return resultSb.toString();       }          private static String byteToHexString(byte b) {           int n = b;           if (n < 0)               n += 256;           int d1 = n / 16;           int d2 = n % 16;           return hexDigits[d1] + hexDigits[d2];       }

6

public static String MD5Encode(String origin, String charsetname) {          String resultString = null;          try {              resultString = new String(origin);              MessageDigest md = MessageDigest.getInstance("MD5");              if (charsetname == null || "".equals(charsetname))                  resultString = byteArrayToHexString(md.digest(resultString                          .getBytes()));              else                  resultString = byteArrayToHexString(md.digest(resultString                          .getBytes(charsetname)));          } catch (Exception exception) {          }          return resultString;      }

7

private static final String hexDigits[] = { "0", "1", "2", "3", "4", "5",              "6", "7", "8", "9", "a", "b", "c", "d", "e", "f" };    }已上的方法都是和网上一样的

推荐信息