首先肯定是导入相关jar包

cxf-core-3.1.9.jar

cxf-rt-bindings-soap-3.1.9.jar

cxf-rt-bindings-xml-3.1.9.jar

cxf-rt-databinding-jaxb-3.1.9.jar

cxf-rt-frontend-jaxws-3.1.9.jar

cxf-rt-frontend-simple-3.1.9.jar

cxf-rt-transports-http-3.1.9.jar

cxf-rt-ws-addr-3.1.9.jar

cxf-rt-ws-policy-3.1.9.jar

cxf-rt-wsdl-3.1.9.jar

第二步配置spring-cxfService的xml(我是做了两个接口):









<jaxws:endpoint id="receiveBomService" implementor="com.thinkgem.jeesite.modules.bom.CatchfromPbomImpl"

address="/receiveBomService"/>

 <jaxws:endpoint id="nameService" implementor="com.thinkgem.jeesite.modules.bomname.CatchfromPBomNameImpl"
address="/nameService"/>

第三步 配置web.xml内增加一个servlet:

cxf
org.apache.cxf.transport.servlet.CXFServlet

cxf
/ws/*

第四步,编写相关接口:

package com.thinkgem.jeesite.modules.bom;

import javax.jws.WebMethod;

import javax.jws.WebParam;

import javax.jws.WebService;

import com.thinkgem.jeesite.modules.bomname.StatusBomCatchName;

@WebService(targetNamespace="http//:test2")

public interface CatchfromPbom {

/**

* 测试用于获取list

* @param list

* @return

/

// @WebMethod(operationName="methodName")

// public String getDataList(List list);

/
*

* 测试用于获取实体

* @return

*/

@WebMethod(operationName="getEntity")

// public String getEntity(CatchFromBom t);

public StatusBomCatchName getEntity(@WebParam(name="fdzcode") String fdzcode,@WebParam(name="dzcode") String dzcode,

@WebParam(name="dzname") String dzname,@WebParam(name="num") String num,

@WebParam(name="ht")String ht);

}

第五步:接口的实现类

package com.thinkgem.jeesite.modules.bom;

import java.util.List;

import javax.jws.WebParam;

import javax.jws.WebResult;

import javax.jws.WebService;

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

import org.springframework.beans.factory.annotation.Autowired;

import com.thinkgem.jeesite.modules.bom.entity.CatchFromBom;

import com.thinkgem.jeesite.modules.bom.service.CatchFromBomService;

import com.thinkgem.jeesite.modules.bomname.StatusBomCatchName;

/**

  • 服务端提供的服务
  • @author 边艳明

*/

@WebService(endpointInterface="com.thinkgem.jeesite.modules.bom.CatchfromPbom",

serviceName="receiveBomInfo",targetNamespace="http//:test2")

public class CatchfromPbomImpl implements CatchfromPbom {

@Autowired
private CatchFromBomService catchFromBomService; protected Logger logger = LoggerFactory.getLogger(getClass()); public @WebResult(name="result")StatusBomCatchName getEntity(@WebParam(name="fdzcode") String fdzcode,@WebParam(name="dzcode") String dzcode,
@WebParam(name="dzname") String dzname,@WebParam(name="num") String num,
@WebParam(name="ht")String ht) {
StatusBomCatchName stat = new StatusBomCatchName();
try {
String f = fdzcode.trim();
if(f != null) {
stat.setL_RET_STATUS("s");
String subfdzcode = f.substring(0,3);//去空格后再去截取
if("FDZ".equals(subfdzcode)) {
CatchFromBom c1 = new CatchFromBom();
c1.setBomDzcode(dzcode);
c1.setBomFdzcode(fdzcode);
CatchFromBom byDzCodeSingle = catchFromBomService.getByDzCodeSingle(c1);//根据dzcode进行查询
c1.setBomHtCode(ht);
c1.setBomCount(num); catchFromBomService.save(c1);
logger.debug("打印输出日志:"+c1.getBomFdzcode()+" "+c1.getBomDzcode()+" "+c1.getBomDzname()); }
return stat;
}
stat.setL_RET_STATUS("e");
return stat;
}catch(Exception e) {
e.printStackTrace();
stat.setL_RET_STATUS("e");
return stat;
}
}

}

最后就是启动你的项目,访问地址为https://localhost:8080/项目名/ws/

通过点击内部的连接,url后面的形式为?wsdl 就可以通过soapui进行测试接口的连通性

这样就结束了

我是新手,第一次做,希望有好方法的多提意见

分享一个基于ssm框架下的webService接口开发的更多相关文章

  1. 【项目笔记】完成一个基于SSM框架的增删改查的模块后总结的问题

    最近为了准备新工作重新摸出了SSM框架,同时从0学习了JQuery,终于用一周做完了一个包括增删改查的模块(主要是属性太多了,其中一个类50+,复制粘贴耗时). 从中特意记下了几个遇到的问题,总结一下 ...

  2. Java基于ssm框架的restful应用开发

    Java基于ssm框架的restful应用开发 好几年都没写过java的应用了,这里记录下使用java ssm框架.jwt如何进行rest应用开发,文中会涉及到全局异常拦截处理.jwt校验.token ...

  3. 一款基于SSM框架技术的全栈Java web项目(已部署可直接体验)

    概述 此项目基于SSM框架技术的Java Web项目,是全栈项目,涉及前端.后端.插件.上线部署等各个板块,项目所有的代码都是自己编码所得,每一步.部分都有清晰的注释,完全不用担心代码混乱,可以轻松. ...

  4. 基于SSM框架的JavaWeb通用权限管理系统

    - - ->关注博主公众号[C you again],获取更多IT资源(IT技术文章,毕业设计.课程设计系统源码,经典游戏源码,HTML网页模板,PPT.简历模板,!!还可以投稿赚钱!!,点击查 ...

  5. [UWP]分享一个基于HSV色轮的调色板应用

    1. 前言 上一篇文章介绍了HSV色轮,这次分享一个基于HSV色轮的调色板应用,应用地址:ColorfulBox - Microsoft Store 2. 功能 ColorfulBox是Adobe 色 ...

  6. 基于Laravel框架下使用守护进程supervisor实现定时任务(毫秒)

    本篇文章给大家带来的内容是关于基于Laravel框架下使用守护进程supervisor实现定时任务(毫秒),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 公司需要实现X分钟内每隔Y秒 ...

  7. ssm框架下怎么批量删除数据?

    ssm框架下批量删除怎么删除? 1.单击删除按钮选中选项后,跳转到js函数,由函数处理 2. 主要就是前端的操作 js 操作(如何全选?如何把选中的数据传到Controller中) 3.fun()函数 ...

  8. 分享一个基于 ABP(.NET 5.0) + vue-element-admin 管理后台

    1.前言 分享一个基于ABP(.NET 5.0) + vue-element-admin项目.希望可以降低新手对于ABP框架的学习成本,感兴趣的同学可以下载项目启动运行一下.对于想选型采用ABP框架的 ...

  9. JEECG(二) JEECG框架下调用webservice java springmvc maven 调用 webservice

    JEECG系列教程二 如何在JEECG框架下使用webservice 本文所使用的webservice是c#开发的 其实无论是什么语言开发的webservice用法都一样 java springmvc ...

随机推荐

  1. oldboy es和logstash

    logstash: input:https://www.elastic.co/guide/en/logstash/current/input-plugins.html input { file { p ...

  2. 经过N条边的最短路

    http://acm.pku.edu.cn/JudgeOnline/problem?id=3613 求经过N条边的最短路 (2 ≤ N ≤ 1,000,000) 倍增floyd,主体是矩阵乘法.考虑一 ...

  3. 获取node异步执行结果的方式

    拿数据库操作举例: var connection = mysql.createConnection(); connection.query(sql,function(err,rows){xxx} ); ...

  4. js_js流程控制

    1.表达式.语句 2.流程控制 顺序   分支   循环 分支   循环结构都有一个条件 循环结构:重复做一件事 3元运算符 switch语句(用来做相等性判断--优先考虑) 注意: 1.switch ...

  5. pta第一次总结

    1).实验代码 include<stdio.h> int main() { int n,i,j,a1,a2,b1,b2,sum,x,k; char c; while(~scanf(&quo ...

  6. 出现errSecInternalComponent

    出现errSecInternalComponent Xcode签名机制(code signing mechanism) 的 bug, Xcode 中账号多了,就会产生很多过期的描述文件,Xcode 没 ...

  7. Jmeter-----参数配置

    参数化配置: 设置为3个线程后,三个用户均能运行

  8. 遍历其 interator

    当用户自定义数据结构的时候, 如果做遍历呢, 这个时候就需要遍历器 interator 了, 它允许用户定义遍历自己自定义数据结构的方式 当用户定义了iterator, 就可以使用 for of 来遍 ...

  9. Java代码实现封装多级树结构对象

    前言: 在开发中,我们经常见到,前端展示树状结构的,这时候就需要后端去封装一个多级树结构对象,前端根据这样结构的数据去渲染数据,这篇文章讲的是如何封装成多级树结构对象. 正文: 1.先封装个树结构的对 ...

  10. 小白用阿里云搭载wordpress个人博客

    阿里云服务已经购买多时,却一直没时间部署内容,借着这次机会自己照着博客园园友的方式用wordpress搭建了个人博客! 创建wordpress的内容就不多说了,直接附链接来源:https://www. ...