仓酷云

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

[学习教程] 发布一篇Java在Client/Server收集中的使用

[复制链接]
不帅 该用户已被删除
跳转到指定楼层
#
发表于 2015-1-18 11:26:45 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
java比较简单,没有C++的烦琐,但学习时最好有C++为基础.与JSP和SQL起应用,功能强大.
跟着Java言语的日趋盛行,出格是Java与InternetWeb的亲切分离,使它在环球获得了伟大的乐成。Java言语以其自力于平台、面向对象、散布式、多线索及完美的平安机制等特征,成为古代信息体系建立中的优秀的开辟平台和运转环境。
1、Java收集使用模子
和Internet上的很多情况一样,完全的Java使用情况实践上也是一个客户机/服务器情况,更切实地说是扫瞄器/服务器模子(即Browser/Server模子,简称Web模子)。但与传统的客户机/服务器(C/S)的二层布局分歧,使用Java的Web模子是由三层布局构成的。传统的C/S布局经由过程动静传送机制,由客户端收回请求给服务器,服务器举行响应处置后经传送机制送回客户端。而在Web模子中,服务器一端被分化成两部分:一部分是使用服务器(Web服务器),另外一部分是数据库服务器。
针对散布式盘算情况,Java经由过程其收集类库供应了优秀的撑持。对数据散布,Java供应了一个URL(UniformResourceLocator)对象,使用此对象可翻开并会见收集上的对象,其会见体例与会见当地文件体系几近完整不异。对操纵分布,Java的客户机/服务器形式能够把运算从服务器分离到客户一端(服务器负责供应查询了局,客户机卖力构造了局的显现),从而进步全部体系的实行效力,增添静态可扩大性。Java收集类库是Java言语为顺应Internet情况而举行的扩大。别的,为顺应Internet的不休开展,Java还供应了静态扩大协定,以不休扩大Java收集类库。
Java的收集类库撑持多种Internet协定,包含Telnet,FTP和HTTP(WWW),与此绝对应的Java收集类库的子类库为:
Java.net
Java.net.ftp
Java.net.www.content
Java.net.www.html
Java.net.www.http
这些子类库各自包容了可用于处置Internet协定的类和办法。个中,java.net用于处置一些基础的收集功效,包含远程登录(Telnet);java.net.ftp用于处置ftp协定;java.net.www.content用于处置WWW页面内容;java.net.www.html和java.net.www.http则分离供应了对HTML言语和HTTP协议的撑持。
2、客户机/服务器情况下的Java使用程序
客户机/服务器在散布处置过程当中,利用基于毗连的收集通讯形式。该通讯模式起首在客户机和服务器之间界说一套通讯协定,并创立一Socket类,使用这个类创建一条牢靠的链接;然后,客户机/服务器再在这条链接上牢靠地传输数据。客户机收回哀求,服务器监听来自客户机的哀求,并为客户机供应呼应服务。这就是典范的"哀求--应对"形式。上面是客户机/服务器的一个典范运作历程:
1、服务器监听响应端口的输出;
2、客户机收回一个哀求;
3、服务器吸收到此哀求;
4、服务器处置这个哀求,并把了局前往给客户机;
5、反复上述历程,直至完成一次会话历程。
依照以上历程,我们利用Java言语编写一个分离针对服务器和客户机的使用程序(Application)。该程序在服务器上时,程序卖力监听客户机哀求,为每个客户机哀求创建Socket毗连,从而为客户机供应服务。本程序供应的服务为:读取来自客户机的一行文本,反转该文本,并把它发还给客户机。
经由过程该程序实例我们看到,利用Java言语计划C/S程序时必要注重以下几点:
(1)、服务器应利用ServerSocket类来处置客户机的毗连哀求。当客户机毗连到服务器所监听的端口时,ServerSocket将分派一新的Socket对象。这个新的Socket对象将毗连到一些新端口,卖力处置与之绝对应客户机的通讯。然后,服务器持续监听ServerSocket,处置新的客户机毗连。
Socket和ServerSocket是Java收集类库供应的两个类。
(2)、服务器利用了多线程机制。Server对象自己就是一个线程,它的run()办法是一个无穷轮回,用以监听来自客户机的毗连。每当有一个新的客户机连接时,ServerSocket就会创立一个新的Socket类实例,同时服务器也将创立一新线程,即一个Connection对象,以处置基于Socket的通讯。与客户机的一切通信均由这个Connection对象处置。Connection的机关函数将初始化基于Socket对象的通讯流,并启动线程的运转。与客户机的通讯和服务的供应,均由Connection对象处置。
(3)、客户机起首创立一Socket对象,用以与服务器通讯。以后需创立两个对象:DataInputStream和PrintStream,前者用以从Socket的InputStream输进流中读取数据,后者则用于往Socket的OutputStream中写数据。最初,客户机程序从尺度输出(如:把持台)中读取数据,并把这些数据写到服务器,在从服务器读取应对动静,然后把这些应对动静写到准输入。
以下分离为服务器和客户机真个源程序清单。本程序在NT4.0收集情况(TCP/IP)下利用JDK1.1调试经由过程。
<p>
对于一个大型项目,如果用java来作,可能需要9个月,并且可能需要翻阅10本以上的书,但如果用ruby来作,3个月,3本书就足够了,而.net网页编程也不过3,4本书足以,这就是区别。
简单生活 该用户已被删除
9#
发表于 2015-3-22 17:09:26 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
老尸 该用户已被删除
8#
发表于 2015-3-15 22:26:48 | 只看该作者
一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。
兰色精灵 该用户已被删除
7#
发表于 2015-3-8 11:50:35 | 只看该作者
Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
若相依 该用户已被删除
6#
发表于 2015-3-7 06:41:37 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
小女巫 该用户已被删除
5#
发表于 2015-2-23 09:37:16 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
地板
发表于 2015-2-3 19:51:40 | 只看该作者
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
飘飘悠悠 该用户已被删除
板凳
发表于 2015-1-30 12:59:31 | 只看该作者
是一种语言,用以产生「小应用程序(Applet(s))
再见西城 该用户已被删除
沙发
发表于 2015-1-21 08:57:18 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
因胸联盟 该用户已被删除
楼主
发表于 2015-1-21 06:54:12 | 只看该作者
Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-9-27 21:29

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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