|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
诸如RMI,EJB等一些技术并不是你说的那么复杂,而是它们把一些复杂的工具封装成不复杂的工具了,理解这些工具是需要些时间。我问你,.net里有这些工具吗?要简单多少?。
完成Client端功效的ClientApp.java原文件:
importjava.net.*;
importjava.io.*;
importjava.lang.*;
publicclassClientApp
{
publicstaticvoidmain(Stringargs[])
{
try
{
//创立通信而且和主机Rock毗连
SocketcSocket=newSocket("192.168.100.188",8018);
//翻开这个Socket的输出/输入流
OutputStreamos=cSocket.getOutputStream();
DataInputStreamis=newDataInputStream(cSocket.getInputStream());
intc;
booleanflag=true;
Stringresponseline;
while(flag)
{
//从尺度输出输入承受字符而且写如体系
while((c=System.in.read())!=-1)
{
os.write((byte)c);
if(c==
)
{
os.flush();
//将程序堵塞,直到回覆信息被收到后将他们在尺度输入上显现出来
responseline=is.readLine();
System.out.println("Messageis:"+responseline);
}
}
}
os.close();
is.close();
cSocket.close();
}
catch(Exceptione)
{
System.out.println("Exception:"+e.getMessage());
}
}
}
完成Server端功效的ServerApp.java原文件:
importjava.net.*;
importjava.io.*;
publicclassServerApp
{
publicstaticvoidmain(Stringargs[])
{
try
{
booleanflag=true;
SocketclientSocket=null;
StringinputLine;
intc;
ServerSocketsSocket=newServerSocket(8018);
System.out.println("Serverlistenon:"+sSocket.getLocalPort());
while(flag)
{
clientSocket=sSocket.accept();
DataInputStreamis=newDataInputStream(newBufferedInputStream(clientSocket.getInputStream()));
OutputStreamos=clientSocket.getOutputStream();
while((inputLine=is.readLine())!=null)
{
//当客户端输出stop的时分服务器程序运转停止!
if(inputLine.equals("stop"))
{
flag=false;
break;
}
else
{
System.out.println(inputLine);
while((c=System.in.read())!=-1)
{
os.write((byte)c);
if(c==
)
{
os.flush();//将信息发送到客户端
break;
}
}
}
}
is.close();
os.close();
clientSocket.close();
}
sSocket.close();
}
catch(Exceptione)
{
System.out.println("Exception:"+e.getMessage());
}
}
}
从一个编程语言的普及程度来将,一个好的IDE是至关中要的,而现在的java的IDE虽然已经很好了,但是和.net比起来还是稍微差一些的,这是个客观事实。java要想普及的更好。DE是必须加以改进的。 |
|