|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
由于这些智能化家电的市场需求没有预期的高,Sun放弃了该项计划。就在Oak几近失败之时,随着互联网的发展,Sun看到了Oak在计算机网络上的广阔应用前景,于是改造了Oak,
JAVA6.0以后,个中JDK自带有个轻量级的webservice服务器。假如你对照仔细一定发明在你安装java的路径下,有javawebservice的示例代码。
我之前也用java开辟过webservice,可是现在用了一个apache下axis开源项目。假如axis夜退化了,归正我不熟悉了。不外java自带有何须舍本逐末呢。明天我就把本人创立的最复杂javawebservice典范历程纪录上去,与人人分享。
我用的是netbeans6,起首创建一个java使用程序工程,名为WebServices。创建一个服务端程序。
packageWebServices;
importjavax.jws.*;
importjavax.xml.ws.Endpoint;
/**
* @authorhecm
*/
@WebService(targetNamespace = "http://www.blogjava.net/JAVA-HE",serviceName = "HelloService")
public classWSProvider
{
//@WebResult(name="Greetings")//自界说该办法前往值在WSDL中相关的形貌
@WebMethod(action = "sayHi",operationName = "sayHi")
publicStringsayHi(@WebParam(name = "MyName")Stringname)
{
return "Hi," +name; //@WebParam是自界说参数name在WSDL中相干的形貌
}
@Oneway //标明该服务办法是单向的,既没有前往值,也不该该声明反省非常
@WebMethod(action = "printSystemTime",operationName = "printSystemTime")//自界说该办法在WSDL中相干的形貌
public voidprintTime()
{
System.out.println(System.currentTimeMillis());
}
public static voidmain(String[]args)
{
ThreadwsPublisher = newThread(newWSPublisher());
wsPublisher.start();
}
private static classWSPublisher implementsRunnable
{
public voidrun()
{
//公布WSProvider到http://localhost:8888/hechangmin/WSProvider这个地点,之前必需挪用wsgen命令
//天生服务类WSProvider的撑持类,命令以下:
//wsgen-cp.WebServices.WSProvider
Endpoint.publish("http://localhost:8888/JAVA-HE/WSProvider",newWSProvider());
}
}
}
固然创建对应的包,就不必说了。
然后编译文件。
进进命令提醒符下,进进classes目次,运转:wsgen-cp.WebServices.WSProvider
能够看到将方才的class天生了几个java文件和class文件。
如今要做的是公布ws到http://localhost:8888/chinajash/WSProvider
而实践上的举措就是:Endpoint.publish("http://localhost:8888/chinajash/WSProvider",newWSProvider());
固然间接运转WSProvider。
然后输出http://localhost:8888/JAVA-HE/WSProvider?wsdl
就已检察到天生的wsdl(webservice形貌言语)。
也就是服务端就OK了。
<p>
那这个对象有什么意义?现在很多用javabean的人就不能保证对象有完整的意义,不成熟的使用模式等导致代码疯狂增长,调试维护的时间要得多得多。在说性能之前,先说说你这个比较的来历。据说微软为了证明。net比java好。 |
|