仓酷云

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

[学习教程] JAVA编程:基于Jave的Web服务事情机制(2)

[复制链接]
爱飞 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:19:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
主要缺点就是:速度比较慢,没有C和C++快HTTP呼应(Responses) 
  和哀求相似,一个HTTP呼应也包括三个部分:
  协定形态代码描叙(Protocol-Statuscode-Description)
  呼应包头(Responseheaders)
  实体(Entitybody)
  上面是HTTP呼应的一个复杂典范:
  HTTP/1.1200OK
  Server:Microsoft-IIS/4.0
  Date:Mon,3Jan199813:13:33GMT
  Content-Type:text/html
  Last-Modified:Mon,11Jan199813:23:42GMT
  Content-Length:112
  <html>
  <head>
  <title>HTTPResponseExample</title></head><body>
  WelcometoBrainySoftware
  </body>
  </html>
  第一行的呼应包头和下面的哀求包头很类似。第一行告知我们,协定是利用的HTTP1.1,呼应哀求已乐成(200暗示乐成),统统已OK。
  呼应包头和哀求包头类似,也包括一些有效的信息。呼应的实体是HTML那一部分的内容。包头和实体也都是被CRLF序列分别开的。
  Socket类
  套接字(socket)是收集毗连的一个端点。它使得使用程序可以经由过程收集举行读和写的操纵。经由过程在毗连上发送和承受字撙节,两个位于分歧盘算机的软件程序可以相互互相通信。为了发送一个动静到另外一个程序,你必要晓得对方呆板的IP地点和socket端标语。在JAVA中,一个socket是由java.net.Socket类所暗示的。
  为了创立一个套接字,你可使用Socket类的机关函数来完成。这些机关函数承受主机名和端口:
  publicSocket(Stringhost,intport)
  host暗示远程盘算机名大概IP地点,port暗示该远程使用的端标语。好比,要在80端口毗连到yahoo.com,你必要机关上面的socket:
  newSocket("yahoo.com",80);
  一旦你乐成创立了一个Socket类的实例,就能够利用它来发送和承受字撙节了。要发送字撙节,必需起首挪用Socket类的getOutputStream办法来取得一个java.io.OutputStream对象。要发送一个文本到远程使用程序,常常要机关一个从OutputStream对象前往的java.io.PrintWriter对象。要吸收毗连另外一真个字撙节,要挪用Socket类的getInputStream办法,该办法是从java.io.InputStream前往的。
  上面的程序段创立了一个socket,和当地HTTP服务器(127.0.0.1代表当地)举行通信,发送一个HTTP哀求,然后从服务器吸收一个呼应。它创立了一个StringBuffer来保留呼应,并将它打印到把持台。
  Socketsocket  =newSocket("127.0.0.1","8080");
  OutputStreamos=socket.getOutputStream();
  booleanautoflush=true;
  PrintWriterout=newPrintWriter(socket.getOutputStream(),autoflush);
  BufferedReaderin=newBufferedReader(
  newInputStreamReader(socket.getInputStream()));
  //sendanHTTPrequesttothewebserver
  out.println("GET/index.jspHTTP/1.1");
  out.println("Host:localhost:8080");
  out.println("Connection:Close");
  out.println();
  //readtheresponse
  booleanloop  =true;
  StringBuffersb=newStringBuffer(8096);
  while(loop){
  if(in.ready()){
    inti=0;
    while(i!=-1){
      i=in.read();
      sb.append((char)i);
    }
    loop=false;
  }
  Thread.currentThread().sleep(50);
}
  //displaytheresponsetotheoutconsole
  System.out.println(sb.toString());
  socket.close();
  要从服务器失掉一个切实的呼应,你必要发送一个遵守HTTP协定划定规矩的HTTP哀求。假如你浏览了下面的那段"超文本传输协定(HTTP)",那末你就应当可以了解方才下面创建socket的代码。

windows系统样,他们做了什么事或者留了一些后门程序,谁都不知道,二,java开发是跨平台,任何系统上都可以运行,对于保密型系统和大型系统开发这是必要的
乐观 该用户已被删除
沙发
发表于 2015-1-20 20:09:02 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
柔情似水 该用户已被删除
板凳
发表于 2015-1-26 21:40:42 | 只看该作者
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
兰色精灵 该用户已被删除
地板
发表于 2015-1-29 12:58:37 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
再现理想 该用户已被删除
5#
发表于 2015-1-30 17:20:04 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
冷月葬花魂 该用户已被删除
6#
发表于 2015-1-31 14:30:39 | 只看该作者
是一种为 Internet发展的计算机语言
只想知道 该用户已被删除
7#
发表于 2015-2-3 11:40:56 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
第二个灵魂 该用户已被删除
8#
发表于 2015-2-6 01:39:33 | 只看该作者
是一种将安全性(Security)列为第一优先考虑的语言
飘飘悠悠 该用户已被删除
9#
发表于 2015-2-8 07:50:17 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
金色的骷髅 该用户已被删除
10#
发表于 2015-2-23 14:43:31 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
11#
发表于 2015-3-7 09:11:43 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
谁可相欹 该用户已被删除
12#
发表于 2015-3-14 16:08:49 | 只看该作者
接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
山那边是海 该用户已被删除
13#
发表于 2015-3-21 11:57:59 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-11-14 22:23

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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