首先我们需要一个service接口,getUsers方法就是给外部调用的接口 需要写实现类
@WebService
public interface ILoginServices {
public String getUsers(String id);
}
还需要一个实现类,这是基于注解的方式
@WebService(endpointInterface="com.hj.services.webservices.ILoginServices",serviceName="Helloworld")
public class LoginServices implements ILoginServices {
public String getUsers(String id) {
//假设外部调用我的接口传入一个id,我通过这个id查出了一个结果集 以xml的字符串返回过去
String id="001001";
String name="hujian";
String sex="nan";
StringBuffer sb = new StringBuffer();
sb.append("<UsersInfo>")
.append("<UsersID>"+id+"</UsersID>")
.append("<UsersName>"+name+"</UsersName>")
.append("<UsersSex>"+sex+"</UsersSex>")
.append("</UsersInfo>");
return sb.toString();
}
}
在spring的配置文件中加上
<jaxws:endpoint
id="ILoginServices"
implementor="com.hj.services.webservices.LoginServices"
address="/Helloworld" />
还需要在web.xml配上
<servlet>
<servlet-name>CXFServlet</servlet-name>
<display-name>CXFServlet</display-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>/cxf/*</url-pattern>
</servlet-mapping>
配置好后在浏览器输入 http://192.168.200.39:8080/项目名/cxf/Helloworld?wsdl 会看到你发布的接口信息
以上实现就可以发布我的webservice接口了 外部调用通过我发布的接口地址 接口, 参数 来访问