根据wsdl和axis2 生成webservice的客户端,具体做法参照
axis2+MyEclipse 开发webservice 实例 二 使用axis2 生成webservice的客户端 这篇随笔
<!-- ========报文入参======= -->
<?xml version="1.0" encoding="GBK" standalone="no" ?>
<ROOT>
<SERVICE_NO type="string">13623453940</SERVICE_NO>
<MASTER_SERV_ID type="string">1001</MASTER_SERV_ID>
<REQUEST_INFO>
<OPR_INFO>
<PROVINCE_GROUP type="string">10010</PROVINCE_GROUP>
<OPEN_TIME type="string">20120301212121</OPEN_TIME>
<LOGIN_NO type="string">aa1868</LOGIN_NO>
<SERVICE_NO type="string">13623453940</SERVICE_NO>
<ACT_ID type="string">201304161360175132</ACT_ID>
<CONTACT_ID type="string"></CONTACT_ID>
<MEANS_ID type="string">201304161360175139</MEANS_ID>
<CUST_ADVINCE type="string"></CUST_ADVINCE>
<RECOMMEND_NO type="string"></RECOMMEND_NO>
<CHANNEL_TYPE type="string">11</CHANNEL_TYPE>
<TO_GROUP_ID type="string"></TO_GROUP_ID>
<SERIAL_NO type="string"></SERIAL_NO>
<JOIN_TERMI_FLAG type="string">JH111</JOIN_TERMI_FLAG>
<TAINFO_LIST>
<TA_INFO>
<PHONE_NO type="string"></PHONE_NO>
<ID_NO type="string"></ID_NO>
</TA_INFO>
</TAINFO_LIST>
</OPR_INFO>
<PARAMS>
<A06>
<PRC_INFO_LIST>
<PRC_INFO>
<PROD_PRCID type="string"></PROD_PRCID>
</PRC_INFO>
</PRC_INFO_LIST>
</A06>
<B06>
<PRC_INFO_LIST>
<PRC_INFO>
<PROD_PRCID type="string"></PROD_PRCID>
</PRC_INFO>
</PRC_INFO_LIST>
<SERV_NO type="string"></SERV_NO>
</B06>
<B02>
<SERV_NO type="string"></SERV_NO>
</B02>
<B10>
<SERV_NO type="string"></SERV_NO>
</B10>
<A11>
<RESOURCE_LIST>
<RESOURCE_INFO>
<RECEIVE_PHONE type="string">13623453940</RECEIVE_PHONE>
<IMEI_NO type="string">869412018032158</IMEI_NO>
<COLOR_ID type="string">10000000</COLOR_ID>
</RESOURCE_INFO>
</RESOURCE_LIST>
</A11>
<A14>
<PHONE_NO type="string"></PHONE_NO>
</A14>
<A17>
<CONDCLASS_0178 type="string">0987</CONDCLASS_0178>
</A17>
<A24>
<SCORE_MONEY type="string"></SCORE_MONEY>
</A24>
<A26>
<IMEI_NO type="string"></IMEI_NO>
<PHONE_NO type="string"></PHONE_NO>
</A26>
<A04>
<INDEX type="string"></INDEX>
</A04>
</PARAMS>
</REQUEST_INFO>
</ROOT>
<!-- 报文出参: -->
<?xml version="1.0" encoding="GBK" standalone="no" ?>
<ROOT>
<RETURN_CODE type="long">0</RETURN_CODE> // 1
<RETURN_MSG type="string">ok!</RETURN_MSG> // 2
<USER_MSG type="string">ok!</USER_MSG> // 3
<DETAIL_MSG type="string">OK!</DETAIL_MSG> // 4
<PROMPT_MSG type="string"></PROMPT_MSG> // 5
当封装报文时,这里1,2,3,4,5部分封装成了一个对象:ResponseHead
<OUT_DATA>
<ORDER_ID type="string">O1113052800212745</ORDER_ID>
<CREATE_ACCEPT type="long">101973397749</CREATE_ACCEPT>
<PASS_FLAG type="string">Y</PASS_FLAG></OUT_DATA>
</ROOT>
封装入参报文对象
package com.*.s4035IntCfm;
import java.util.ArrayList;
import java.util.List;
public class S4035IntCfmRequest {
private String serviceNo;
private String masterServId;
private String provinceGroup;
private String loginNo;
private String phoneNo;
private String actId;
private String meansId;
private String contactId;
private String channelType;
private String custAdvince;
private String recommendNo;
private List<TaInfo> taInfoList =new ArrayList<TaInfo>();
private String toGroupId;
private String serialNo;
private String joinTermiFlag;
private List<PrcInfo> prcInfoList =new ArrayList<PrcInfo>();
private List<ResourceInfo> resourceInfo=new ArrayList<ResourceInfo>();
private String servNo;
private String imeiNo;
private String openTime;
public String getOpenTime() {
return openTime;
}
public void setOpenTime(String openTime) {
this.openTime = openTime;
}
public String getImeiNo() {
return imeiNo;
}
public void setImeiNo(String imeiNo) {
this.imeiNo = imeiNo;
}
private String transferSNo;//TRANSFER_SERIALNO
private String condclass;//CONDCLASS_0178
private String scoreMoney;
private String index;
public String getIndex() {
return index;
}
public void setIndex(String index) {
this.index = index;
}
public String getScoreMoney() {
return scoreMoney;
}
public void setScoreMoney(String scoreMoney) {
this.scoreMoney = scoreMoney;
}
public String getCondclass() {
return condclass;
}
public void setCondclass(String condclass) {
this.condclass = condclass;
}
public String getTransferSNo() {
return transferSNo;
}
public void setTransferSNo(String transferSNo) {
this.transferSNo = transferSNo;
}
public String getServNo() {
return servNo;
}
public void setServNo(String servNo) {
this.servNo = servNo;
}
public List<PrcInfo> getPrcInfoList() {
return prcInfoList;
}
public void setPrcInfoList(List<PrcInfo> prcInfoList) {
this.prcInfoList = prcInfoList;
}
public List<ResourceInfo> getResourceInfo() {
return resourceInfo;
}
public void setResourceInfo(List<ResourceInfo> resourceInfo) {
this.resourceInfo = resourceInfo;
}
public String getServiceNo() {
return serviceNo;
}
public void setServiceNo(String serviceNo) {
this.serviceNo = serviceNo;
}
public String getMasterServId() {
return masterServId;
}
public void setMasterServId(String masterServId) {
this.masterServId = masterServId;
}
public String getProvinceGroup() {
return provinceGroup;
}
public void setProvinceGroup(String provinceGroup) {
this.provinceGroup = provinceGroup;
}
public String getLoginNo() {
return loginNo;
}
public void setLoginNo(String loginNo) {
this.loginNo = loginNo;
}
public String getPhoneNo() {
return phoneNo;
}
public void setPhoneNo(String phoneNo) {
this.phoneNo = phoneNo;
}
public String getActId() {
return actId;
}
public void setActId(String actId) {
this.actId = actId;
}
public String getMeansId() {
return meansId;
}
public void setMeansId(String meansId) {
this.meansId = meansId;
}
public String getContactId() {
return contactId;
}
public void setContactId(String contactId) {
this.contactId = contactId;
}
public String getChannelType() {
return channelType;
}
public void setChannelType(String channelType) {
this.channelType = channelType;
}
public String getCustAdvince() {
return custAdvince;
}
public void setCustAdvince(String custAdvince) {
this.custAdvince = custAdvince;
}
public String getRecommendNo() {
return recommendNo;
}
public void setRecommendNo(String recommendNo) {
this.recommendNo = recommendNo;
}
public List<TaInfo> getTaInfoList() {
return taInfoList;
}
public void setTaInfoList(List<TaInfo> taInfoList) {
this.taInfoList = taInfoList;
}
public String getToGroupId() {
return toGroupId;
}
public void setToGroupId(String toGroupId) {
this.toGroupId = toGroupId;
}
public String getSerialNo() {
return serialNo;
}
public void setSerialNo(String serialNo) {
this.serialNo = serialNo;
}
public String getJoinTermiFlag() {
return joinTermiFlag;
}
public void setJoinTermiFlag(String joinTermiFlag) {
this.joinTermiFlag = joinTermiFlag;
}
}
Request对象中引用类型属性TaInfo
package com.*.s4035IntCfm;
public class TaInfo {
private String phoneNo;//可空
private String idNo;//可空
public String getPhoneNo() {
return phoneNo;
}
public void setPhoneNo(String phoneNo) {
this.phoneNo = phoneNo;
}
public String getIdNo() {
return idNo;
}
public void setIdNo(String idNo) {
this.idNo = idNo;
}
}
Request对象中引用类型属性PrcInfo
package com.*.s4035IntCfm;
public class PrcInfo {
private String prodPrcid;//给用户订购的资费,可空
public String getProdPrcid() {
return prodPrcid;
}
public void setProdPrcid(String prodPrcid) {
this.prodPrcid = prodPrcid;
}
}
Request对象中引用类型属性ResourceInfo
package com.*.s4035IntCfm;
public class ResourceInfo {
private String receivePhone;
private String imeiNo;
private String colorId;
public String getReceivePhone() {
return receivePhone;
}
public void setReceivePhone(String receivePhone) {
this.receivePhone = receivePhone;
}
public String getImeiNo() {
return imeiNo;
}
public void setImeiNo(String imeiNo) {
this.imeiNo = imeiNo;
}
public String getColorId() {
return colorId;
}
public void setColorId(String colorId) {
this.colorId = colorId;
}
}
出参报文的封装对象的父类
package com.*;
public class ResponseHead {
private String returnCode;
private String returnMsg;
private String userMsg;
private String detailMsg;
private String promptMsg;
public String getReturnCode() {
return returnCode;
}
public void setReturnCode(String returnCode) {
this.returnCode = returnCode;
}
public String getReturnMsg() {
return returnMsg;
}
public void setReturnMsg(String returnMsg) {
this.returnMsg = returnMsg;
}
public String getUserMsg() {
return userMsg;
}
public void setUserMsg(String userMsg) {
this.userMsg = userMsg;
}
public String getDetailMsg() {
return detailMsg;
}
public void setDetailMsg(String detailMsg) {
this.detailMsg = detailMsg;
}
public String getPromptMsg() {
return promptMsg;
}
public void setPromptMsg(String promptMsg) {
this.promptMsg = promptMsg;
}
}
把出参报文为封装response对象,此处继承一个自定义的根据出参报文封装的父类
package com.*.s4035IntCfm;
import com.*.ResponseHead;
public class S4035IntCfmResponse extends ResponseHead{
private String orderId;
private String createAccept;
private String passFlag;
public String getOrderId() {
return orderId;
}
public void setOrderId(String orderId) {
this.orderId = orderId;
}
public String getCreateAccept() {
return createAccept;
}
public void setCreateAccept(String createAccept) {
this.createAccept = createAccept;
}
public String getPassFlag() {
return passFlag;
}
public void setPassFlag(String passFlag) {
this.passFlag = passFlag;
}
}
把S4035IntCfmRequest对象装换成入参报文
public static String parseS4035IntCfmRequest2XML(S4035IntCfmRequest request){
String xml=null;
StringBuffer sb = new StringBuffer();
sb.append("<?xml version=\"1.0\" encoding=\"GBK\" standalone=\"no\" ?>").append("\n");
sb.append("<ROOT>").append("\n");
sb.append("<SERVICE_NO type=\"string\">"+request.getServiceNo()+"</SERVICE_NO>").append("\n");
sb.append("<MASTER_SERV_ID type=\"string\">"+request.getMasterServId()+"</MASTER_SERV_ID>").append("\n");
sb.append("<REQUEST_INFO>").append("\n");
sb.append("<OPR_INFO>").append("\n");
sb.append("<PROVINCE_GROUP type=\"string\">"+request.getProvinceGroup()+"</PROVINCE_GROUP>").append("\n");
sb.append("<OPEN_TIME type=\"string\">"+request.getOpenTime()+"</OPEN_TIME>").append("\n");
sb.append("<LOGIN_NO type=\"string\">"+request.getLoginNo()+"</LOGIN_NO>").append("\n");
// sb.append("<PHONE_NO type=\"string\">"+request.getPhoneNo()+"</PHONE_NO>").append("\n");
sb.append("<SERVICE_NO type=\"string\">"+request.getServiceNo()+"</SERVICE_NO>").append("\n");
sb.append("<ACT_ID type=\"string\">"+request.getActId()+"</ACT_ID>").append("\n");
if(request.getContactId()==null){
sb.append("<CONTACT_ID type=\"string\"></CONTACT_ID>").append("\n");
}else{
sb.append("<CONTACT_ID type=\"string\">"+request.getContactId()+"</CONTACT_ID>").append("\n");
}
sb.append("<MEANS_ID type=\"string\">"+request.getMeansId()+"</MEANS_ID>").append("\n");
if(request.getCustAdvince()==null){
sb.append("<CUST_ADVINCE type=\"string\"></CUST_ADVINCE>").append("\n");
}else{
sb.append("<CUST_ADVINCE type=\"string\">"+request.getCustAdvince()+"</CUST_ADVINCE>").append("\n");
}
if(request.getRecommendNo()==null){
sb.append("<RECOMMEND_NO type=\"string\"></RECOMMEND_NO>").append("\n");
}else{
sb.append("<RECOMMEND_NO type=\"string\">"+request.getRecommendNo()+"</RECOMMEND_NO>").append("\n");
}
sb.append("<CHANNEL_TYPE type=\"string\">"+request.getChannelType()+"</CHANNEL_TYPE>").append("\n");
if(request.getToGroupId()==null){
sb.append("<TO_GROUP_ID type=\"string\"></TO_GROUP_ID>").append("\n");
}else{
sb.append("<TO_GROUP_ID type=\"string\">"+request.getToGroupId()+"</TO_GROUP_ID>").append("\n");
}
if(request.getSerialNo()==null){
sb.append("<SERIAL_NO type=\"string\"></SERIAL_NO>").append("\n");
}else{
sb.append("<SERIAL_NO type=\"string\">"+request.getSerialNo()+"</SERIAL_NO>").append("\n");
}
if(request.getJoinTermiFlag()==null){
sb.append("<JOIN_TERMI_FLAG type=\"string\"></JOIN_TERMI_FLAG>").append("\n");
}else{
sb.append("<JOIN_TERMI_FLAG type=\"string\">"+request.getJoinTermiFlag()+"</JOIN_TERMI_FLAG>").append("\n");
}
sb.append("<TAINFO_LIST>").append("\n");
if(request.getTaInfoList()!=null&&request.getTaInfoList().size()>0){
String phoneNo=null;
String idNo=null;
for(int i=0;i<request.getTaInfoList().size();i++){
TaInfo taInfo=request.getTaInfoList().get(i);
sb.append("<TA_INFO>").append("\n");
phoneNo=taInfo.getPhoneNo()!=null?taInfo.getPhoneNo():"";
idNo=taInfo.getIdNo()!=null?taInfo.getIdNo():"";
sb.append("<PHONE_NO type=\"string\">"+phoneNo+"</PHONE_NO>").append("\n");
sb.append("<ID_NO type=\"string\">"+idNo+"</ID_NO>").append("\n");
sb.append("</TA_INFO>").append("\n");
}
}else{
sb.append("<TA_INFO>").append("\n");
sb.append("<PHONE_NO type=\"string\"></PHONE_NO>").append("\n");
sb.append("<ID_NO type=\"string\"></ID_NO>").append("\n");
sb.append("</TA_INFO>").append("\n");
}
sb.append("</TAINFO_LIST>").append("\n");
sb.append("</OPR_INFO>").append("\n");
sb.append("<PARAMS>").append("\n");
sb.append("<A06>").append("\n");
sb.append("<PRC_INFO_LIST>").append("\n");
if(request.getPrcInfoList()!=null&&request.getPrcInfoList().size()>0){
String prodPrcId=null;
for(int i=0;i<request.getPrcInfoList().size();i++){
PrcInfo prcInfo=request.getPrcInfoList().get(i);
sb.append("<PRC_INFO>").append("\n");
prodPrcId=prcInfo.getProdPrcid()!=null?prcInfo.getProdPrcid():"";
sb.append("<PROD_PRCID type=\"string\">"+prodPrcId+"</PROD_PRCID>").append("\n");
sb.append("</PRC_INFO>").append("\n");
}
}else{
sb.append("<PRC_INFO>").append("\n");
sb.append("<PROD_PRCID type=\"string\"></PROD_PRCID>").append("\n");
sb.append("</PRC_INFO>").append("\n");
}
sb.append("</PRC_INFO_LIST>").append("\n");
sb.append("</A06>").append("\n");
sb.append("<B06>").append("\n");
sb.append("<PRC_INFO_LIST>").append("\n");
if(request.getPrcInfoList()!=null&&request.getPrcInfoList().size()>0){
String prodPrcId=null;
for(int i=0;i<request.getPrcInfoList().size();i++){
PrcInfo prcInfo=request.getPrcInfoList().get(i);
sb.append("<PRC_INFO>").append("\n");
prodPrcId=prcInfo.getProdPrcid()!=null?prcInfo.getProdPrcid():"";
sb.append("<PROD_PRCID type=\"string\">"+prodPrcId+"</PROD_PRCID>").append("\n");
sb.append("</PRC_INFO>").append("\n");
}
}else{
sb.append("<PRC_INFO>").append("\n");
sb.append("<PROD_PRCID type=\"string\"></PROD_PRCID>").append("\n");
sb.append("</PRC_INFO>").append("\n");
}
sb.append("</PRC_INFO_LIST>").append("\n");
if(request.getServNo()==null){
sb.append("<SERV_NO type=\"string\"></SERV_NO>").append("\n");
}else{
sb.append("<SERV_NO type=\"string\">"+request.getServNo()+"</SERV_NO>").append("\n");
}
sb.append("</B06>").append("\n");
sb.append("<B02>").append("\n");
if(request.getServNo()==null){
sb.append("<SERV_NO type=\"string\"></SERV_NO>").append("\n");
}else{
sb.append("<SERV_NO type=\"string\">"+request.getServNo()+"</SERV_NO>").append("\n");
}
sb.append("</B02>").append("\n");
sb.append("<B10>").append("\n");
if(request.getServNo()==null){
sb.append("<SERV_NO type=\"string\"></SERV_NO>").append("\n");
}else{
sb.append("<SERV_NO type=\"string\">"+request.getServNo()+"</SERV_NO>").append("\n");
}
sb.append("</B10>").append("\n");
sb.append("<A11>").append("\n");
sb.append("<RESOURCE_LIST>").append("\n");
if(request.getResourceInfo()!=null&&request.getResourceInfo().size()>0){
String recPhone=null;
String imeiNo=null;
String colorId=null;
for(int i=0;i<request.getResourceInfo().size();i++){
ResourceInfo resourceInfo=request.getResourceInfo().get(i);
sb.append("<RESOURCE_INFO>").append("\n");
recPhone=resourceInfo.getReceivePhone()!=null?resourceInfo.getReceivePhone():"";
imeiNo=resourceInfo.getImeiNo()!=null?resourceInfo.getImeiNo():"";
colorId=resourceInfo.getColorId()!=null?resourceInfo.getColorId():"";
sb.append("<RECEIVE_PHONE type=\"string\">"+recPhone+"</RECEIVE_PHONE>").append("\n");
sb.append("<IMEI_NO type=\"string\">"+imeiNo+"</IMEI_NO>").append("\n");
sb.append("<COLOR_ID type=\"string\">"+colorId+"</COLOR_ID>").append("\n");
sb.append("</RESOURCE_INFO>").append("\n");
}
}else{
sb.append("<RESOURCE_INFO>").append("\n");
sb.append("<RECEIVE_PHONE type=\"string\"></RECEIVE_PHONE>").append("\n");
sb.append("<IMEI_NO type=\"string\"></IMEI_NO>").append("\n");
sb.append("<COLOR_ID type=\"string\"></COLOR_ID>").append("\n");
sb.append("</RESOURCE_INFO>").append("\n");
}
sb.append("</RESOURCE_LIST>").append("\n");
sb.append("</A11>").append("\n");
sb.append("<A14>").append("\n");
if(request.getPhoneNo()==null){
sb.append("<PHONE_NO type=\"string\"></PHONE_NO>").append("\n");
}else{
sb.append("<PHONE_NO type=\"string\">"+request.getPhoneNo()+"</PHONE_NO>").append("\n");
}
sb.append("</A14>").append("\n");
sb.append("<A17>").append("\n");
if(request.getCondclass()==null){
sb.append("<CONDCLASS_0178 type=\"string\"></CONDCLASS_0178>").append("\n");
}else{
sb.append("<CONDCLASS_0178 type=\"string\">"+request.getCondclass()+"</CONDCLASS_0178>").append("\n");
}
sb.append("</A17>").append("\n");
sb.append("<A24>").append("\n");
if(request.getScoreMoney()==null){
sb.append("<SCORE_MONEY type=\"string\"></SCORE_MONEY>").append("\n");
}else{
sb.append("<SCORE_MONEY type=\"string\">"+request.getScoreMoney()+"</SCORE_MONEY>").append("\n");
}
sb.append("</A24>").append("\n");
sb.append("<A26>").append("\n");
if(request.getImeiNo()==null){
sb.append("<IMEI_NO type=\"string\"></IMEI_NO>").append("\n");
}else{
sb.append("<IMEI_NO type=\"string\">"+request.getImeiNo()+"</IMEI_NO>").append("\n");
}
if(request.getPhoneNo()==null){
sb.append("<PHONE_NO type=\"string\"></PHONE_NO>").append("\n");
}else{
sb.append("<PHONE_NO type=\"string\">"+request.getPhoneNo()+"</PHONE_NO>").append("\n");
}
sb.append("</A26>").append("\n");
sb.append("<A04>").append("\n");
if(request.getIndex()==null){
sb.append("<INDEX type=\"string\"></INDEX>").append("\n");
}else{
sb.append("<INDEX type=\"string\">"+request.getScoreMoney()+"</INDEX>").append("\n");
}
sb.append("</A04>").append("\n");
sb.append("</PARAMS>").append("\n");
sb.append("</REQUEST_INFO>").append("\n");
sb.append("</ROOT>").append("\n");
xml = sb.toString();
return xml;
}
把调用接口获得的出参报文转换成自己封装的S4035IntCfmResponse对象
public static S4035IntCfmResponse parseXML2S4035IntCfmResponse(String xml) throws DocumentException{
Document document =DocumentHelper.parseText(xml);
S4035IntCfmResponse response =new S4035IntCfmResponse();
Element root = document.getRootElement();
String DETAIL_MSG = root.elementTextTrim("DETAIL_MSG");
String PROMPT_MSG = root.elementTextTrim("PROMPT_MSG");
String RETURN_CODE = root.elementTextTrim("RETURN_CODE");
if(RETURN_CODE!=null&&(RETURN_CODE.equals("0")||RETURN_CODE.equals("0"))){
Element OUT_DATA = root.element("OUT_DATA");
String ORDER_ID = OUT_DATA.elementTextTrim("ORDER_ID");
String CREATE_ACCEPT = OUT_DATA.elementTextTrim("CREATE_ACCEPT");
String PASS_FLAG = OUT_DATA.elementTextTrim("PASS_FLAG");
response.setOrderId(ORDER_ID);
response.setCreateAccept(CREATE_ACCEPT);
response.setPassFlag(PASS_FLAG);
}
response.setDetailMsg(DETAIL_MSG);
response.setPromptMsg(PROMPT_MSG);
response.setReturnCode(RETURN_CODE);
return response;
}
在service层调用webservice接口并把入参和出参报文记录到数据库
public S4035IntCfmResponse S4035IntCfm(S4035IntCfmRequest request,String url) {
S4035IntCfmResponse response = null;
String xml = MyParseXML.parseS4035IntCfmRequest2XML(request);
System.out.println(xml);
log.info("========入参=======" + xml);
try {
S4035IntCfmStub stub = new S4035IntCfmStub(url);
S4035IntCfmStub.CallService call = new S4035IntCfmStub.CallService();
call.setPin(xml);
S4035IntCfmStub.CallServiceResponse response2 = stub.callService(call);
String xml1 = "";
xml1 = response2.get_return();
System.out.println(xml1);
log.info("========出参=======" + xml1);
// 记录入参报文和出参报文
TOperationLogDTO oper = new TOperationLogDTO();
oper.setOperateTime(new Date());
oper.setOperateUser("商城 ");
oper.setOperateDesc("入参:" + xml + "\n出参:" + xml1);
oper.setOperateAction("自主开通合约");
oper.setOperateObjectId(request.getServiceNo());
oper.setOperateObjectReason("");
oper.setOperateName(request.getPhoneNo());
//底层通过this.getHibernateTemplate().save(dto);保存到数据中
this.operationLogManagerImpl.save(oper);
response = MyParseXML.parseXML2S4035IntCfmResponse(xml);
} catch (Exception e) {
e.printStackTrace();
}
return response;
}
这样在Action层,传入指定的参数,就可调用S4035IntCfm(S4035IntCfmRequest request,String url)方法了,
并且可以通过调用接口的返回值S4035IntCfmResponse进行判断处理
保存入参和出参时涉及到java类和相关文件
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
/**
* <ul>
* <li> <b>目的:</b> <br />
* <p>
* 表T_OPERATION_LOG的映射类,
*/
public class TOperationLogDTO extends AbstractTOperationLogDTO{
private static final long serialVersionUID = 8980322235903658767L;
public TOperationLogDTO()
{
super();
}
public TOperationLogDTO(java.lang.String logId)
{
super(logId);
}
public boolean equals(Object other)
{ if ( !(other instanceof TOperationLogDTO) )
return false;
TOperationLogDTO castOther = (TOperationLogDTO) other;
return new EqualsBuilder().append(this.getLogId(), castOther.getLogId()).isEquals();
}
public int hashCode()
{
return new HashCodeBuilder().append(getLogId()).toHashCode();
}
@Override
public String toString() {
return super.toString();
}
}
import com.*.common.model.util.PageObject;
/**
* <ul>
* <li><b>目的:</b> <br />
* <p>
* 实体对象,请勿做客户化操作, 对应表:T_OPERATION_LOG 商城对象操作履历表
*/
public abstract class AbstractTOperationLogDTO extends PageObject{
private static final long serialVersionUID = -3633835505537085014L
// 表ID
private java.lang.String logId;
// 操作时间
private java.util.Date operateTime;
//操作查询结束时间
private java.util.Date operateEndTime;
// 操作人
private java.lang.String operateUser;
// 操作备注
private java.lang.String operateDesc;
// 操作编号
private java.lang.String operateAction;
// 操作状态
private java.lang.Long operateState;
// 操作对象前状态
private java.lang.String operateObjectStatus;
// 操作对象ID
private java.lang.String operateObjectId;
// 操作原因
private java.lang.String operateObjectReason;
// 操作对象类型
private java.lang.String operateObjectType;
//操作人名字
private java.lang.String operateName;
public AbstractTOperationLogDTO() {
}
public AbstractTOperationLogDTO(java.lang.String logId) {
this.setLogId(logId);
}
/**
* get表ID
*
* @return 表ID
*/
public java.lang.String getLogId() {
return logId;
}
/**
* set表ID
*
* @param 表ID
* @return void
*/
public void setLogId(java.lang.String logId) {
this.logId = logId;
}
/**
* get操作时间
*
* @return 操作时间
*/
public java.util.Date getOperateTime() {
return operateTime;
}
/**
* set操作时间
*
* @param 操作时间
* @return void
*/
public void setOperateTime(java.util.Date operateTime) {
this.operateTime = operateTime;
}
/**
* get操作人
*
* @return 操作人
*/
public java.lang.String getOperateUser() {
return operateUser;
}
/**
* set操作人
*
* @param 操作人
* @return void
*/
public void setOperateUser(java.lang.String operateUser) {
this.operateUser = operateUser;
}
/**
* get操作备注
*
* @return 操作备注
*/
public java.lang.String getOperateDesc() {
return operateDesc;
}
/**
* set操作备注
*
* @param 操作备注
* @return void
*/
public void setOperateDesc(java.lang.String operateDesc) {
this.operateDesc = operateDesc;
}
/**
* get操作编号
*
* @return 操作编号
*/
public java.lang.String getOperateAction() {
return operateAction;
}
/**
* set操作编号
*
* @param 操作编号
* @return void
*/
public void setOperateAction(java.lang.String operateAction) {
this.operateAction = operateAction;
}
/**
* get操作状态
*
* @return 操作状态
*/
public java.lang.Long getOperateState() {
return operateState;
}
/**
* set操作状态
*
* @param 操作状态
* @return void
*/
public void setOperateState(java.lang.Long operateState) {
this.operateState = operateState;
}
/**
* get操作对象前状态
*
* @return 操作对象前状态
*/
public java.lang.String getOperateObjectStatus() {
return operateObjectStatus;
}
/**
* set操作对象前状态
*
* @param 操作对象前状态
* @return void
*/
public void setOperateObjectStatus(java.lang.String operateObjectStatus) {
this.operateObjectStatus = operateObjectStatus;
}
/**
* get操作对象ID
*
* @return 操作对象ID
*/
public java.lang.String getOperateObjectId() {
return operateObjectId;
}
/**
* set操作对象ID
*
* @param 操作对象ID
* @return void
*/
public void setOperateObjectId(java.lang.String operateObjectId) {
this.operateObjectId = operateObjectId;
}
/**
* get操作原因
*
* @return 操作原因
*/
public java.lang.String getOperateObjectReason() {
return operateObjectReason;
}
/**
* set操作原因
*
* @param 操作原因
* @return void
*/
public void setOperateObjectReason(java.lang.String operateObjectReason) {
this.operateObjectReason = operateObjectReason;
}
/**
* get操作对象类型
*
* @return 操作对象类型
*/
public java.lang.String getOperateObjectType() {
return operateObjectType;
}
/**
* set操作对象类型
*
* @param 操作对象类型
* @return void
*/
public void setOperateObjectType(java.lang.String operateObjectType) {
this.operateObjectType = operateObjectType;
}
public java.lang.String getOperateName() {
return operateName;
}
public void setOperateName(java.lang.String operateName) {
this.operateName = operateName;
}
public java.util.Date getOperateEndTime() {
return operateEndTime;
}
public void setOperateEndTime(java.util.Date operateEndTime) {
this.operateEndTime = operateEndTime;
}
@Override
public String toString() {
return "AbstractTOperationLogDTO [logId=" + logId + ", operateAction="
+ operateAction + ", operateDesc=" + operateDesc
+ ", operateEndTime=" + operateEndTime + ", operateName="
+ operateName + ", operateObjectId=" + operateObjectId
+ ", operateObjectReason=" + operateObjectReason
+ ", operateObjectStatus=" + operateObjectStatus
+ ", operateObjectType=" + operateObjectType
+ ", operateState=" + operateState + ", operateTime="
+ operateTime + ", operateUser=" + operateUser + "]";
}
}
<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="com.*.shopservice.pubunit.model.dto.TOperationLogDTO" table="T_OPERATION_LOG" >
<comment>对象操作履历表</comment>
<id name="logId" type="java.lang.String" >
<column name="LOG_ID" length="32" />
<generator class="uuid.hex" />
</id>
<property name="operateAction" type="java.lang.String" >
<column name="OPERATE_ACTION" length="100" >
<comment>操作编号</comment>
</column>
</property>
<property name="operateObjectId" type="java.lang.String" >
<column name="OPERATE_OBJECT_ID" length="100" >
<comment>操作对象ID</comment>
</column>
</property>
<property name="operateObjectStatus" type="java.lang.String" >
<column name="OPERATE_OBJECT_STATUS" length="100" >
<comment>操作对象前状态</comment>
</column>
</property>
<property name="operateObjectReason" type="java.lang.String" >
<column name="OPERATE_OBJECT_REASON" length="1200" >
<comment>操作原因</comment>
</column>
</property>
<property name="operateObjectType" type="java.lang.String" >
<column name="OPERATE_OBJECT_TYPE" length="100" >
<comment>操作对象类型</comment>
</column>
</property>
<property name="operateState" type="java.lang.Long" >
<column name="OPERATE_STATE" length="8" >
<comment>操作状态</comment>
</column>
</property>
<property name="operateDesc" type="java.lang.String" >
<column name="OPERATE_DESC" length="1500" >
<comment>操作备注</comment>
</column>
</property>
<property name="operateUser" type="java.lang.String" update="false">
<column name="OPERATE_USER" length="32" >
<comment>操作人</comment>
</column>
</property>
<property name="operateTime" type="java.util.Date" update="false">
<column name="OPERATE_TIME" >
<comment>操作时间</comment>
</column>
</property>
<property name="operateName" type="java.lang.String" update="false">
<column name="OPERATE_NAME" length="128" >
<comment>操作人姓名</comment>
</column>
</property>
</class>
</hibernate-mapping>
建表语句:
create table T_OPERATION_LOG
(
LOG_ID VARCHAR2(32) not null,
OPERATE_TIME DATE,
OPERATE_USER VARCHAR2(32),
OPERATE_DESC VARCHAR2(3000),
OPERATE_STATE NUMBER(8),
OPERATE_ACTION VARCHAR2(100),
OPERATE_OBJECT_ID VARCHAR2(100),
OPERATE_OBJECT_STATUS VARCHAR2(100),
OPERATE_OBJECT_TYPE VARCHAR2(100),
OPERATE_OBJECT_REASON VARCHAR2(1200),
OPERATE_NAME VARCHAR2(128)
)