Web开发

首页 » 常识 » 预防 » 源码WebService接口开发详解
TUhjnbcbe - 2023/9/10 20:31:00

业务场景:给一家公司的两个系统之间做部分数据做同步,A系统中进行业务操作后同步到B系统中,这样就不需要B系统再次进行操作了。

开发方案:B系统搭建WebService服务器,A系统业务操作后通过发送请求将参数传入B系统中自动执行业务操作。

第一步,搭建WebService服务,建立WebService接口及实现类:

/**

*WebService接口

*

date年4月10日09:09:24

*

author拽拽很乖

*/

publicinterfaceIOrderPluginWebService{

/**

*webService接口

*

author拽拽很乖

*

date年4月10日09:15:18

*

paramtype类型

*

parampk_order主键

*

return是否同步成功:

*true同步成功

*false同步失败

*/

publicbooleansendDataToOrderPlugin(Stringtype,String[]pk_order);

}

/**

*webService接口实现类

*

author拽拽很乖

*

date年4月10日09:27:18

*/

publicclassOrderReportWebServiceImplimplementsIOrderPluginWebService{

Override

publicbooleansendDataToOrderPlugin(Stringtype,String[]pk_order){

//业务操作,逻辑处理

}

}

因为本次主要说明WebService服务搭建以及连接,业务逻辑处理就不贴上来了。

第二步、创建wsdl文件及upm文件:

右键接口选择GenerateWSDL以及PublishWebService,创建好wsdl文件以及upm文件。当然也可以在接口上添加

WebService注解,没有upm自动插件一般用注解。

第三步:浏览器测试是否发布成功:

启动服务端代码,打开IE浏览器输入地址测试,成功后就可以看到刚才发布的接口,点开后或看到如下图所示的xml格式网页,表示WebService接口发布成功。

第四步:SOAPUI测试接口:

打开soapUI工具,新建测试工程,右键Projects新建一个SOAP项目,projectname随意填写,WSDL写上述图所示浏览器中测试的带有?wsdl结尾的地址。

填写参数后就可以测试了:启动后WebService实现类就可以接到测试额参数,至此,WebService服务端搭建成功。

第五步:发送soap请求:

/**

*发送SOAP请求

*

paramxmlStringXML文件

*

returnwebService返回结果

*

throwsException

*

author拽拽很乖

*

date年04月10日10:30:21

*/

privateStringsendPost(StringxmlString)throwsException{

//HttpURLConnection发送SOAP请求

URLurl=newURL(URL);

HttpURLConnectionconn=(HttpURLConnection)url.openConnection();

conn.setRequestProperty(Content-Type,text/xml;charset=utf-8);

conn.setRequestMethod(POST);

conn.setUseCaches(false);

conn.setDoInput(true);

conn.setDoOutput(true);

conn.setConnectTimeout(30*);

conn.setReadTimeout(30*);

DataOutputStreamdos=new

DataOutputStream(conn.getOutputStream());

dos.write(xmlString.getBytes(utf-8));

dos.flush();

BufferedReaderreader=newBufferedReader(newInputStreamReader(

conn.getInputStream(),utf-8));

Stringline=null;

StringBufferstrBuf=newStringBuffer();

while((line=reader.readLine())!=null){

strBuf.append(line);

}

dos.close();

reader.close();

returnstrBuf.toString();

}

其中参数XML就按照soapUI测试时的xml格式配置即可,需要传入的参数写入对应的位置即可,URL就是soapUI测试时的URL。

/**

*webServiceURL

*

author拽拽很乖

*

date年4月10日10:36:13

*/

privatestaticfinalStringURL=

1
查看完整版本: 源码WebService接口开发详解