WebService基于Spring实现
这里我们需要借助到另一个框架CXF
Apache CXF是一个正式的Apache顶级项目,是一个开源的,容易使用的Web服务框架
Apache CXF = Celtix + XFire
CXF框架是一种基于Servlet技术的SOA应用开发框架
优点:
高性能,扩展简单且容易使用,支持多种标准
与Spring天然无缝集成
CXF官方网站下载地址:http://cxf.apache.org/download.html cxf官网地址
如果需要的话,我也上传到资源里了cxf全部资源
一般只需要这几个包即可
下面几个包我上传了cxf部分jar包
CXF与Spring整合实现WebService服务器端步骤
- 创建Dynamic Web project,引入CXF的jar包
- 编写即将发布为WebService的接口以及实现类
- web.xml中配置CXF,使其生效
- web.xml中配置Spring
- 创建Spring的bean配置文件applicationContext.xml
- 运行项目,检验结果检验成果
2、编写WebService类
@WebService
public class WebServiceUtil {
@Resource
private UserService userService;
public String sayHello(String name) {
return "hello,"+name;
}
public User login(String loginName,String password) {
return this.userService.login(loginName, password);
}
}
3、配置web.xml文件
其他spring配置照常,需要添加一个Servlet配置
<servlet>
<servlet-name>CXFServlet</servlet-name>
<servlet-class>
org.apache.cxf.transport.servlet.CXFServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>CXFServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
5、配置applicationContext.xml
<!--使用jaxws需要在前面加上一些配置-->
xmlns:jaxws="http://cxf.apache.org/jaxws"
xsi:schemaLocation="http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd">
<jaxws:endpoint id="wsUtil" implementor="com.cakeonline.webservice.WebServiceUtil" address="/wsutil"/>
6、打开浏览器,实验
在地址后面+services/wsutil?wsdl 即可看到我们的wsdl文件
services即我们在web.xml中配置的路径
wsutil即address对应的值
输入网址后,可以看到我们刚才定义的方法