資源簡介
java實現的8583發包解包,靈活,擴展性強,8583各域能自定義編碼和解碼規則,包含標準的銀聯MAC加密算法(ansi x9.19,ansi x9.9)及一個完整的socket客戶端請求服務端的demo,修改mac運算規則時,只要重寫com.protocol.p8583.field.FieldMac類就可以了。maven的demo。和其他地方50下載分的是一樣的

代碼片段和文件信息
package?com.protocol;
import?com.protocol.dto.Request;
import?com.protocol.dto.Response;
import?com.protocol.utils.ByteUtil;
import?com.protocol.utils.ExceptionUtils;
import?com.protocol.utils.Log;
/**
?*?User:
?*?Date:?14-1-10
?*?Time:?15:49
?*/
public?abstract?class?Protocol?{
????private?static?org.slf4j.Logger?logger?=?Log.makeLogger(Protocol.class);
????public?static?final?String?ENC_UTF8?=?“UTF-8“;
????public?static?final?String?ENC_GBK?=?“GBK“;
????protected?REQ?paramDTO;
????protected?RESP?resultDTO;
????protected?byte[]?req_body;
????protected?byte[]?resp_body;
????public?RESP?getResultDTO()?{
????????return?resultDTO;
????}
????protected?Protocol(REQ?paramDTO?RESP?resultDTO)?{
????????this.paramDTO?=?paramDTO;
????????this.resultDTO?=?resultDTO;
????}
????public?byte[]?makeRequest()?{
????????try?{
????????????logger.info(paramDTO.toString());
????????????makeRequestPre();
????????????makeRequestContent();
????????????makeRequestPost();
????????????logger.info(desc()?+?“發送的數據?:?“?+?getEncodeRequest());
????????????return?req_body;
????????}?catch?(Exception?e)?{
????????????ExceptionUtils.printException(e?10);
????????????throw?new?RuntimeException(e);
????????}
????}
????public?RESP?makeResponse(byte[]?resp_body)?{
????????try?{
????????????this.resp_body?=?resp_body;
????????????logger.info(desc()?+?“響應的數據?:?“?+?getEncodeResponse());
????????????makeResponsePre();
????????????RESP?resp?=?makeResponseobject();
????????????makeResponsePost();
????????????logger.info(resp.toString());
????????????return?resp;
????????}?catch?(Exception?e)?{
????????????ExceptionUtils.printException(e?10);
????????????throw?new?RuntimeException(e);
????????}
????}
????protected?String?getEncodeRequest()?{
????????return?ByteUtil.getEncodingString(req_body?getEncoding());
????}
????protected?String?getEncodeResponse()?{
????????return?ByteUtil.getEncodingString(resp_body?getEncoding());
????}
????protected?void?makeRequestPre()?{
????}
????protected?void?makeRequestPost()?{
????}
????protected?void?makeResponsePre()?{
????}
????protected?void?makeResponsePost()?{
????}
????protected?abstract?void?makeRequestContent();
????protected?abstract?RESP?makeResponseobject();
????public?REQ?getParamDTO()?{
????????return?paramDTO;
????}
????public?String?desc()?{
????????return?““;
????}
????public?String?getEncoding()?{
????????return?ENC_UTF8;
????}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-12-18?13:47??j8583\
?????目錄???????????0??2018-12-18?13:46??j8583\.idea\
?????目錄???????????0??2018-12-18?13:46??j8583\.idea\artifacts\
?????文件?????????451??2018-12-18?13:46??j8583\.idea\artifacts\j8583_war.xm
?????文件?????????841??2018-12-18?13:46??j8583\.idea\artifacts\j8583_war_exploded.xm
?????文件?????????637??2018-12-18?13:46??j8583\.idea\compiler.xm
?????文件?????????138??2018-12-18?13:46??j8583\.idea\encodings.xm
?????文件????????1210??2018-12-18?13:46??j8583\.idea\misc.xm
?????文件?????????257??2018-12-18?13:46??j8583\.idea\modules.xm
?????文件????????1254??2018-12-18?13:46??j8583\.idea\workspace.xm
?????文件????????1232??2018-12-18?13:46??j8583\j8583.iml
?????文件????????2695??2014-05-15?21:33??j8583\pom.xm
?????目錄???????????0??2018-12-18?13:46??j8583\resources\
?????文件????????4117??2014-05-15?21:34??j8583\resources\log4j.xm
?????目錄???????????0??2018-12-18?13:46??j8583\src\
?????目錄???????????0??2018-12-18?13:46??j8583\src\com\
?????目錄???????????0??2018-12-18?13:46??j8583\src\com\protocol\
?????文件????????2579??2014-05-16?20:51??j8583\src\com\protocol\Protocol.java
?????目錄???????????0??2018-12-18?13:46??j8583\src\com\protocol\communicator\
?????文件????????1277??2014-05-16?20:51??j8583\src\com\protocol\communicator\Communicate.java
?????文件????????3471??2014-05-16?20:51??j8583\src\com\protocol\communicator\CommunicateSocketLgCon.java
?????文件????????1522??2014-05-16?20:51??j8583\src\com\protocol\communicator\DefaultSocketProcess.java
?????文件?????????288??2014-05-16?20:51??j8583\src\com\protocol\communicator\SocketProcessor.java
?????目錄???????????0??2018-12-18?13:46??j8583\src\com\protocol\demo\
?????目錄???????????0??2018-12-18?13:46??j8583\src\com\protocol\demo\abc\
?????文件????????1255??2014-05-16?20:51??j8583\src\com\protocol\demo\abc\AbstractProtocolABC.java
?????文件????????1045??2014-05-16?20:51??j8583\src\com\protocol\demo\abc\ConfigABC.java
?????文件????????2132??2014-05-16?20:51??j8583\src\com\protocol\demo\abc\Define8583ABC.java
?????文件????????1648??2014-05-16?21:36??j8583\src\com\protocol\demo\abc\ProtocolAbcPay.java
?????文件????????1715??2014-05-16?21:33??j8583\src\com\protocol\demo\abc\ProtocolAbcSign.java
?????文件????????1265??2014-05-16?20:58??j8583\src\com\protocol\demo\abc\ProtocolSign.java
............此處省略126個文件信息
評論
共有 條評論