|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
但是我同意你的观点,对于大型项目来说,应该是采用框架的一部分,根据功能的不同而改进,欢迎你能再提出些宝贵意见,我会多多学习的。说到jbuilder,我可能是个人感觉,用的时候确实没有vs爽,我最喜欢的IDE是netbeans,谢谢。条记
Hello.ice#ifndefSIMPLE_ICE#defineSIMPLE_ICE//名字空间or包名moduledemo.slice.Hello{interfaceHello{voidprintString(strings);};};
#endif
服务器:HelloI.java
packagedemo.ice.Hello.server;
importdemo.slice.Hello._HelloDisp;importIce.Current;
/***@authorMudfishCN**servantclass:HelloI*_HelloDisp基类由slice2java编译器天生,它是一个笼统类。*_HelloDisp笼统类包括一个printString()办法。*/publicclassHelloIextends_HelloDisp{
/*(non-Javadoc)*@seedemo._HelloOperations#printString(java.lang.String,Ice.Current)*/publicvoidprintString(Strings,Current__current){//TODOAuto-generatedmethodstubSystem.out.println(s);}
}
HelloServer.java
packagedemo.ice.Hello.server;
importIce.LocalException;
/***@authorMudfishCN*version:1.0.1*/publicclassHelloServer{publicstaticvoidmain(String[]args){//界说status变量,用来把持服务器.intstatus=0;Ice.Communicatoric=null;//声明一个Communicator对象ictry{//初始化Ice运转时ic=Ice.Util.initialize(args);/**创立一个对象适配器(ObjectAdapter)对象IOAdapter,并初始化之。*参数"HelloWorldAdapter":暗示适配器的名字。*参数"default-p10000":暗示适配器利用缺省协定(TCP/IP)在端口10000处监听到来的哀求。*服务器设置完成.*/Ice.ObjectAdapterIOAdapter=ic.createObjectAdapterWithEndpoints("HelloWorldAdapter","default-p10000");
/**为Hello接口创立一个servant.*/Ice.ObjectIObject=(Ice.Object)newHelloI();/**将新的servant增加到适配器,*并将这个新的servant定名为"HelloWorld"*/IOAdapter.add(IObject,Ice.Util.stringToIdentity("HelloWorld"));/**激活适配器,以使服务器入手下手处置来自客户的哀求*/IOAdapter.activate();
/**挂起收回挪用的线程,直到服务器完成停止为止.*大概是经由过程收回一个挪用封闭运转时(runtime)的指令来使服务器停止.*/ic.waitForShutdown();}catch(LocalExceptione){//捕获ICE运转时大概抛出的一切非常e.printStackTrace();status=1;}catch(Exceptione){//捕获串常量e.printStackTrace();status=1;}finally{if(ic!=null){ic.destroy();}}System.exit(status);}}
HelloClient.java
packagedemo.ice.Hello.client;
importIce.ObjectPrx;importIce.Util;importdemo.slice.Hello.HelloPrx;importdemo.slice.Hello.HelloPrxHelper;
/***@authorMudfishCN*/publicclassHelloClient{publicstaticvoidmain(String[]args){intstatus=0;Strings;//创立一个通讯器的对象icIce.Communicatoric=null;try{//初始化ICE运转时ic=Util.initialize(args);/**猎取远程对象的代办署理*创立一个代办署理对象,并用通讯器的stringToProxy()办法初始化之。*参数:"HelloWorld:default-p10000"*暗示:*/ObjectPrxbase=ic.stringToProxy("HelloWorld:default-p10000");/**关头点*/HelloPrxhello=HelloPrxHelper.checkedCast(base);//测试向下转换是不是乐成。假如不乐成抛出非常信息"Invalidproxy".if(hello==null){thrownewError("Invalidproxy");}//向服务器发送十条动静for(inti=1;i<=10;i++){s="Hello,world!"+Integer.toString(i);hello.printString(s);}}catch(Ice.LocalExceptione){e.printStackTrace();status=1;}catch(Exceptione){e.printStackTrace();status=1;}finally{if(ic!=null){//烧毁通讯毗连ic.destroy();}}System.exit(status);}}
自己的整个学习思路完全被老师的讲课思路所牵制,这样几节课听下来,恐怕自己的见解都应该是书里的知识点了,根本谈不上自身发现问题,分析问题,和解决问题能力的切实提高。 |
|