分享一个基于ssm框架下的webService接口开发
首先肯定是导入相关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接口开发的更多相关文章
- 【项目笔记】完成一个基于SSM框架的增删改查的模块后总结的问题
最近为了准备新工作重新摸出了SSM框架,同时从0学习了JQuery,终于用一周做完了一个包括增删改查的模块(主要是属性太多了,其中一个类50+,复制粘贴耗时). 从中特意记下了几个遇到的问题,总结一下 ...
- Java基于ssm框架的restful应用开发
Java基于ssm框架的restful应用开发 好几年都没写过java的应用了,这里记录下使用java ssm框架.jwt如何进行rest应用开发,文中会涉及到全局异常拦截处理.jwt校验.token ...
- 一款基于SSM框架技术的全栈Java web项目(已部署可直接体验)
概述 此项目基于SSM框架技术的Java Web项目,是全栈项目,涉及前端.后端.插件.上线部署等各个板块,项目所有的代码都是自己编码所得,每一步.部分都有清晰的注释,完全不用担心代码混乱,可以轻松. ...
- 基于SSM框架的JavaWeb通用权限管理系统
- - ->关注博主公众号[C you again],获取更多IT资源(IT技术文章,毕业设计.课程设计系统源码,经典游戏源码,HTML网页模板,PPT.简历模板,!!还可以投稿赚钱!!,点击查 ...
- [UWP]分享一个基于HSV色轮的调色板应用
1. 前言 上一篇文章介绍了HSV色轮,这次分享一个基于HSV色轮的调色板应用,应用地址:ColorfulBox - Microsoft Store 2. 功能 ColorfulBox是Adobe 色 ...
- 基于Laravel框架下使用守护进程supervisor实现定时任务(毫秒)
本篇文章给大家带来的内容是关于基于Laravel框架下使用守护进程supervisor实现定时任务(毫秒),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 公司需要实现X分钟内每隔Y秒 ...
- ssm框架下怎么批量删除数据?
ssm框架下批量删除怎么删除? 1.单击删除按钮选中选项后,跳转到js函数,由函数处理 2. 主要就是前端的操作 js 操作(如何全选?如何把选中的数据传到Controller中) 3.fun()函数 ...
- 分享一个基于 ABP(.NET 5.0) + vue-element-admin 管理后台
1.前言 分享一个基于ABP(.NET 5.0) + vue-element-admin项目.希望可以降低新手对于ABP框架的学习成本,感兴趣的同学可以下载项目启动运行一下.对于想选型采用ABP框架的 ...
- JEECG(二) JEECG框架下调用webservice java springmvc maven 调用 webservice
JEECG系列教程二 如何在JEECG框架下使用webservice 本文所使用的webservice是c#开发的 其实无论是什么语言开发的webservice用法都一样 java springmvc ...
随机推荐
- oldboy es和logstash
logstash: input:https://www.elastic.co/guide/en/logstash/current/input-plugins.html input { file { p ...
- 经过N条边的最短路
http://acm.pku.edu.cn/JudgeOnline/problem?id=3613 求经过N条边的最短路 (2 ≤ N ≤ 1,000,000) 倍增floyd,主体是矩阵乘法.考虑一 ...
- 获取node异步执行结果的方式
拿数据库操作举例: var connection = mysql.createConnection(); connection.query(sql,function(err,rows){xxx} ); ...
- js_js流程控制
1.表达式.语句 2.流程控制 顺序 分支 循环 分支 循环结构都有一个条件 循环结构:重复做一件事 3元运算符 switch语句(用来做相等性判断--优先考虑) 注意: 1.switch ...
- pta第一次总结
1).实验代码 include<stdio.h> int main() { int n,i,j,a1,a2,b1,b2,sum,x,k; char c; while(~scanf(&quo ...
- 出现errSecInternalComponent
出现errSecInternalComponent Xcode签名机制(code signing mechanism) 的 bug, Xcode 中账号多了,就会产生很多过期的描述文件,Xcode 没 ...
- Jmeter-----参数配置
参数化配置: 设置为3个线程后,三个用户均能运行
- 遍历其 interator
当用户自定义数据结构的时候, 如果做遍历呢, 这个时候就需要遍历器 interator 了, 它允许用户定义遍历自己自定义数据结构的方式 当用户定义了iterator, 就可以使用 for of 来遍 ...
- Java代码实现封装多级树结构对象
前言: 在开发中,我们经常见到,前端展示树状结构的,这时候就需要后端去封装一个多级树结构对象,前端根据这样结构的数据去渲染数据,这篇文章讲的是如何封装成多级树结构对象. 正文: 1.先封装个树结构的对 ...
- 小白用阿里云搭载wordpress个人博客
阿里云服务已经购买多时,却一直没时间部署内容,借着这次机会自己照着博客园园友的方式用wordpress搭建了个人博客! 创建wordpress的内容就不多说了,直接附链接来源:https://www. ...