java__webService接口

论坛 期权论坛 脚本     
匿名网站用户   2020-12-20 16:04   11   0

webService接口分两种,一种是为别人提供接口,一种是使用别人接口,这里先详细描述如何写接口,让别人调用

准备:使用xfire写接口,引入与xfire相关的jar包,这是我本地项目的所有jar包,写接口用到了一部分。

1.在web.xml中增加对xfire的配置,代码如下(<url-pattern>/services/*</url-pattern>中services为自己定义,用于以后的访问):

<servlet>
<servlet-name>xfire</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>xfire</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>

2.在WEB-INF下新建xfire-servlet.xml,与web.xml同级,如图,xfire-servlet.xml中配置代码如下:

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">

<beans>

<import resource="classpath:org/codehaus/xfire/spring/xfire.xml" />

<!-- webService base -->

<!-- 第一部分:

固定配置-->

<bean id="webService" class="org.codehaus.xfire.spring.remoting.XFireExporter" abstract="true">

<property name="serviceFactory">

<ref bean="xfire.serviceFactory" />

</property>

<property name="xfire">

<ref bean="xfire" />

</property>

</bean>

<!-- 第二部分:

配置key:WBSTEST(访问地址中使用的名字)

wbsServiceTestImpl:为下面的第三部分bean的id

其他为固定

-->

<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">

<property name="urlMap">

<map>

<entry key="WBSTEST">

<ref bean="wbsServiceTestImpl"/>

</entry>

</map>

</property>

</bean>

<!-- 第三部分:

配置bean 的id名字自己定义,

ref中wbsServiceTest对应下一个第四部分bean的id,

com.lp.service.IWbsServiceTest为自己要发布的接口

-->

<bean id="wbsServiceTestImpl" parent="webService" class="org.codehaus.xfire.spring.remoting.XFireExporter">

<property name="serviceBean">

<ref bean="wbsServiceTest"/>

</property>

<property name="serviceClass">

<value>com.lp.service.IWbsServiceTest</value>

</property>

</bean>

<!-- 第四部分:

配置bean 的id名字自己定义,

class中 com.lp.service.WbsServiceTestImpl为自己要发布的接口实现类的路径

-->

<bean id="wbsServiceTest" class="com.lp.service.WbsServiceTestImpl">

</bean>

</beans>

3.开始写自己要发布的services

在项目上创建services包(根据自己的项目目录来)

创建接口类以及接口实现类

IWbsServiceTest:代码如下

package com.lp.service;

public interface IWbsServiceTest {

public String lpWbs(String name) throws Exception;

}

WbsServiceTestImpl:代码如下

package com.lp.service;

import org.springframework.stereotype.Service;

@Service("wbsServiceTest")

public class WbsServiceTestImpl implements IWbsServiceTest{

public String lpWbs(String name) throws Exception {

int a=1; int b=2;

System.out.println("哈哈成功了:server sayHello invoke"+a+b);

return "你好 " + name;

} }

到这里,一个简单的webservices就写完了,可以看一下是否成功,在浏览器地址栏输入访问地址:

http://10.1.41.36:8080/netCross/services/WBSTEST?wsdl出现如下如样子就可以了

转载于:https://www.cnblogs.com/javaping/p/5073503.html

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:1136255
帖子:227251
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP