仓酷云

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

[学习教程] JAVA网站制作之基于Jave的Web服务事情机制(4)

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

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

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

x
C++编译的是本地码,优点是启动快,而且可以精确控制资源因此可以开发很高效的程序.缺点是编程麻烦,而且容易留下安全隐患.跨平台靠源代码在各个平台间分别编译(一处编写到处编译)鄙人面的段落中,让我们来看看这三个类吧。 
  HttpServer类
  HttpServer类暗示一个web服务器,且在大众静态目次WEB_ROOT及它的子目次中能为找到的那些静态资本而服务。WEB_ROOT用以下体例初始化:
  publicstaticfinalStringWEB_ROOT=
  System.getProperty("user.dir")+File.separator+"webroot";
  这段代码指了然一个包括静态资本的webroot目次,这些资本可用来测试该使用。在该目次中也能找到servlet容器。
  要哀求一个静态资本,在扫瞄器中输出以下地点或URL:
  http://machineName:port/staticResource
  machineName是运转这个使用的盘算机名大概IP地点。假如你的扫瞄器是在统一台呆板上,可使用localhost作为呆板名。端口是8080。staticResource是哀求的文件夹名,它必需位于WEB-ROOT目次中。
  一定,假如你利用统一个盘算机来测试使用,你想向HttpServer哀求发送一个index.html文件,那末利用以下URL:
  http://localhost:8080/index.html
  想要中断服务器,能够经由过程发送一个shutdown命令。该命令是被HttpServer类中的静态SHUTDOWN_COMMAND变量所界说:
  privatestaticfinalStringSHUTDOWN_COMMAND="/SHUTDOWN";
  因而,要中断服务,你可使用命令:
  http://localhost:8080/SHUTDOWN
  如今让我们来看看后面提到的await办法。上面一个程序清单给出懂得释。
  Listing1.1.TheHttpServerclassawaitmethod
  publicvoidawait(){
  ServerSocketserverSocket=null;
  intport=8080;
  try{
    serverSocket=newServerSocket(port,1,
    InetAddress.getByName("127.0.0.1"));
  }
  catch(IOExceptione){
    e.printStackTrace();
    System.exit(1);
  }
  //Loopwaitingforarequest
  while(!shutdown){
    Socketsocket=null;
    InputStreaminput=null;
    OutputStreamoutput=null;
    try{
      socket=serverSocket.accept();
      input=socket.getInputStream();
      output=socket.getOutputStream();
      //createRequestobjectandparse
      Requestrequest=newRequest(input);
      request.parse();
      //createResponseobject
      Responseresponse=newResponse(output);
      response.setRequest(request);
      response.sendStaticResource();
      //Closethesocket
      socket.close();
      //checkifthepreviousURIisashutdowncommand
      shutdown=request.getUri().equals(SHUTDOWN_COMMAND);
    }
    catch(Exceptione){
      e.printStackTrace();
      continue;
    }
  }
}
  await办法是经由过程创立一个ServerSocket实例而入手下手的。然后它进进了一个WHILE轮回:
  serverSocket=newServerSocket(
  port,1,InetAddress.getByName("127.0.0.1"));
  ...
  //Loopwaitingforarequest
  while(!shutdown){
    ...
  }
  socket=serverSocket.accept();
  在收到一个哀求后,await办法从accept办法前往的socket实例中取得java.io.InputStream和java.io.OutputStream对象。

令人可喜的是java现在已经开源了,所以我想我上述的想法也许有一天会实现,因为java一直都是不断创新的语言,每次创新都会给我们惊喜,这也是我喜欢java的一个原因。
活着的死人 该用户已被删除
沙发
发表于 2015-1-20 20:09:02 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
变相怪杰 该用户已被删除
板凳
发表于 2015-1-27 05:32:35 | 只看该作者
是一种使网页(Web Page)产生生动活泼画面的语言
若天明 该用户已被删除
地板
发表于 2015-1-30 09:00:09 | 只看该作者
是一种使网页(Web Page)产生生动活泼画面的语言
乐观 该用户已被删除
5#
发表于 2015-1-30 14:31:07 | 只看该作者
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。
老尸 该用户已被删除
6#
发表于 2015-2-6 11:57:37 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
小魔女 该用户已被删除
7#
发表于 2015-2-6 13:58:47 | 只看该作者
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
小女巫 该用户已被删除
8#
发表于 2015-2-16 09:34:06 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
谁可相欹 该用户已被删除
9#
发表于 2015-2-17 05:18:59 | 只看该作者
一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从
愤怒的大鸟 该用户已被删除
10#
发表于 2015-3-3 19:53:49 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
海妖 该用户已被删除
11#
发表于 2015-3-11 12:54:18 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
飘飘悠悠 该用户已被删除
12#
发表于 2015-3-18 11:43:22 | 只看该作者
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
冷月葬花魂 该用户已被删除
13#
发表于 2015-3-25 20:05:50 | 只看该作者
是一种突破用户端机器环境和CPU
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-23 17:07

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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