仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1217|回复: 20
打印 上一主题 下一主题

[学习教程] JAVA编程:java Socket 通信的代码例子

[复制链接]
山那边是海 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:46:28 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

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是必须加以改进的。
若相依 该用户已被删除
21#
发表于 2015-4-24 17:33:25 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
乐观 该用户已被删除
20#
发表于 2015-4-22 08:06:38 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
再现理想 该用户已被删除
19#
发表于 2015-4-16 04:10:47 | 只看该作者
是一种语言,用以产生「小应用程序(Applet(s))
爱飞 该用户已被删除
18#
发表于 2015-4-12 16:21:21 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
若天明 该用户已被删除
17#
发表于 2015-4-10 05:53:16 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
简单生活 该用户已被删除
16#
发表于 2015-4-3 00:57:13 | 只看该作者
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
小妖女 该用户已被删除
15#
发表于 2015-3-29 16:13:58 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
活着的死人 该用户已被删除
14#
发表于 2015-3-20 01:23:39 | 只看该作者
Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。
只想知道 该用户已被删除
13#
发表于 2015-3-12 18:29:53 | 只看该作者
是一种语言,用以产生「小应用程序(Applet(s))
深爱那片海 该用户已被删除
12#
发表于 2015-3-7 12:07:21 | 只看该作者
是一种使用者不需花费很多时间学习的语言
透明 该用户已被删除
11#
发表于 2015-2-25 12:35:41 | 只看该作者
接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
愤怒的大鸟 该用户已被删除
10#
发表于 2015-2-24 06:54:05 | 只看该作者
所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
海妖 该用户已被删除
9#
发表于 2015-2-23 12:53:36 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
8#
发表于 2015-2-12 02:18:32 | 只看该作者
一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从
分手快乐 该用户已被删除
7#
发表于 2015-2-11 08:19:02 | 只看该作者
是一种突破用户端机器环境和CPU
再见西城 该用户已被删除
6#
发表于 2015-2-5 09:11:45 | 只看该作者
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
小女巫 该用户已被删除
5#
发表于 2015-2-1 20:44:52 | 只看该作者
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
老尸 该用户已被删除
地板
发表于 2015-1-31 21:59:12 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
小魔女 该用户已被删除
板凳
发表于 2015-1-24 07:19:23 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-21 16:34

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表