import org.apache.commons.lang3.time.DateFormatUtils; import com.trunkbow.comm.service.Signature; import com.trunkbow.comm.service.impl.XmlSignature; def messageId=UUID.randomUUID().toString(); def bodyId=UUID.randomUUID().toString(); def now1=DateFormatUtils.format(new Date(), "yyyyMMdd HH:mm:ss"); def now2=DateFormatUtils.format(new Date(), "yyyyMMddHHmmss"); Signature sign=new XmlSignature(); def message=""" <Finance> <Message id=\"${messageId}\"> <CPReq id=\"CPReq\"> <version>6.0.1</version> <instId>12345</instId> <certId>13389743053847134210</certId> <serialNo>${now2}${__Random(10000,99999,)}</serialNo> <date>${now1}</date> <accountName></accountName> <bankCardNo>${cardNo}</bankCardNo> <bankCardType>C</bankCardType> <bankCardAreaCode></bankCardAreaCode> <certType></certType> <certNo></certNo> <mobilePhone></mobilePhone> <charge></charge> <amount>1</amount> <useCode>K00</useCode> <currency>156</currency> <limitType></limitType> <remark></remark> <sellerName></sellerName> <installmentCount></installmentCount> <originalAmount></originalAmount> <expiryDate></expiryDate> <cvv2></cvv2> <channelSystemId>0000</channelSystemId> </CPReq> </Message> </Finance> """; def signedMessage; signedMessage=sign.sign(message,"CPReq"); vars.put("message",signedMessage);
本文介绍如何使用Java和Apache Commons Lang库进行金融交易消息的构造与签名,包括使用UUID生成唯一的消息ID和bodyID,利用当前时间格式化字符串,并通过XmlSignature实现消息签名。
5703

被折叠的 条评论
为什么被折叠?



