加密示例
package com.hzfc.common.utils;
import java.security.Key;
import javax.xml.namespace.QName;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.axis.encoding.ser.BeanDeserializerFactory;
import org.apache.axis.encoding.ser.BeanSerializerFactory;
import org.apache.commons.codec.binary.Base64;
public class DemoWebServicesTest {
static String url = "http://zlservice.tmsf.com/services/RentQyService";
static String qytoken = "MTQH6L7roLayGsMU";
static String qykey = "lU5kxjymciYbSnSg0QwibW";
/**
*调试测试
*/
public static void main(String[] args) throws Exception {
System.out.println(saveHt());
}
/**
* 合同备案接口
* @return
* @throws Exception
*/
private static String saveHt() throws Exception {
String returnMsg="";
//企业token
String token = qytoken;
//合同
JSONObject htjson = new JSONObject();
htjson.put("qyhtbh", "BYHI20190510");
htjson.put("fwcode", "246201");
htjson.put("fjcode", "11300969");
htjson.put("zlqssj", "2015-07-01");
htjson.put("zljzsj", "2015-10-01");
htjson.put("fkzq", "2");
htjson.put("fkfs", "1");
htjson.put("jzfs", "2");
htjson.put("jzyhzh", "1300000000");
htjson.put("yjje", "2000");
htjson.put("zjje", "2000");
htjson.put("zzjje", "24000");
htjson.put("jtdz", "上塘路199,E座302室");
String htjsonstr = htjson.toString();
//当事人
JSONArray dsrlist = new JSONArray();
//房东
JSONObject fd = new JSONObject();
fd.put("dsrmc", "XX有限公司");
fd.put("dsrlx", "1");
fd.put("zjlb", "2019");
fd.put("zjhm", "MA2018IJDHXXXX");
fd.put("sjhm", "13000000001");
fd.put("frdbxm", "李四");
fd.put("frdbzjlb", "2000");
fd.put("frdbzjhm", "330105198711051531");
fd.put("dsrlb", "1");
fd.put("gx", "0");
dsrlist.add(fd);
//租客
JSONObject zk = new JSONObject();
zk.put("dsrmc", "张飞");
zk.put("dsrlx", "2");
zk.put("zjlb", "2000");
zk.put("zjhm", "330102195901190348");
zk.put("sjhm", "13000000012");
zk.put("dsrlb", "2");
fd.put("xb", "男");
zk.put("gx", "0");
dsrlist.add(zk);
String dsrjsonstr = dsrlist.toString();
Key key = AESUtils.toKey(Base64.decodeBase64(qykey));
//合同加密
byte[] encryptData = AESUtils.encrypt(htjsonstr.getBytes(), key);
htjsonstr = AESUtils.parseByte2HexStr(encryptData);
//当事人加密
encryptData = AESUtils.encrypt(dsrjsonstr.getBytes(), key);
dsrjsonstr = AESUtils.parseByte2HexStr(encryptData);
Service service = new Service();
try {
// 开始偿试远程服务调用
Call call = (Call) service.createCall();
QName qn = new QName("http://impl.service.company.hzfc.com", "saveLskHt");
call.registerTypeMapping(String.class, qn, new BeanSerializerFactory(String.class, qn),new BeanDeserializerFactory(String.class, qn));
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING, String.class);
call.setOperationName(qn);
call.setTargetEndpointAddress(new java.net.URL(url));
call.addParameter("token", org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN);
call.addParameter("info", org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN);
call.addParameter("dsrlist", org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN);
returnMsg = (String) call.invoke(new Object[] { token,htjsonstr,dsrjsonstr});
} catch(Exception e){
System.out.print("客户端接收异常");
System.out.print(e.getMessage());
}
return returnMsg;
}
}