Java web基础总结三之—— java web 服务器

Java web基础总结三之—— java web 服务器
一.什么是java web服务器

        首先来看一下什么是web服务器,它一般指网站服务器,是指一个再互联网一个主机上的一个程序。它可以解析客户端发送来的遵循http协议的请求,并且经过逻辑业务处理后,以http协议向浏览器等Web客户端提供文档。

        互联网上供外界访问的Web资源可以分为两种:一个是静态web资源(如html 页面),指web页面中供人们浏览的数据始终是不变。另一个动态web资源,指web页面中供人们浏览的数据是由程序动态产生的,不同的时间访问web页面看到的内容各不相同,现在的web页面基本都是动态的。常用动态web资源开发技术:JSP/Servlet、ASP、PHP等。

         一般我们把动态web页面的开发称为javaweb技术,所以通常所说的java web服务器也可以认为是遵循全部JSP/Servlet规范的容器。所谓的容器就是它实现了java定义的JSP/Servlet的接口规范,可以对JSP/Servlet的创建,运行,销毁等整个生命周期进行管理。

            servlet 容器的实现是非常复杂的。但是主要还是实现了三个过程:首先创建一个实现了javax.servlet.ServletRequest 接口或javax.servlet.http.ServletRequest 接口的 Request 对象,并用请求参数、请求头(headers)、cookies、查询字符串、uri 等信息填充该 Request对象;紧接着,创建一个实现了javax.servlet.ServletResponse或javax.servlet.http.ServletResponse 接口的 Response 对象;调用相应的servlet 的服务方法,将先前创建的 request 对象和 response 对象作为参数传入。接收请求的 servlet 从 request 对象中读取信息,并将返回值写入到 response 对象。然后把这个response 对象转换成http报文传到客户端。

 

 

二.自己实现一个最简单的java web服务器

    由于http协议是基于tcp/ip协议之上的,所以只需要使用ServerSocket和Socket就可以实现一个非常简单的http服务器。下面是一个类似于hello world的最简单,最简陋的http服务器。没有对请求进行处理,对于所有的客户端请求都返回hello world。

     

package com.c;

import java.io.IOException;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
public class HTTPServer {
    public static void main(String[] args) {
        try {
            ServerSocket serverSocket=new ServerSocket(8080);

            while(true){
                Socket socket=serverSocket.accept();
                System.out.println("-------");
                PrintWriter printWriter=new PrintWriter(socket.getOutputStream());
                //封装http响应报文
                printWriter.println("HTTP/1.1 200 OK");
                printWriter.println("Content-type:text/html");
                printWriter.println();
                //发送hello world
                printWriter.println("<h1>hello world</h1>");
                printWriter.flush();
                socket.close();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

 三.常见的几个java web服务器
 1.  WebLogic

   WebLogic是BEA公司的产品,是目前应用最广泛的Web服务器,支持J2EE规范,当然是商业的,所以需要付费。

  2.       WebSphere

            它是IBM公司开发的,支持J2EE规范。一般用于保险,银行等等核心交易系统。跟钱有关的业务系统很多都是用的WebSphere Application Server。所以性能高,同样的也不是免费的。

  3. Apache

     Apache开源组织有一个很优秀的开源web服务器:Tomcat,在小型的应用系统使用比较广泛,该服务器支持全部JSP以及Servlet规范,现在有很多的商业公司也会在生产环境使用它。

 

四.Tomcat服务器简介
1.      tomcat 的安装

      它的下载地址是:http://tomcat.apache.org/.下载时,tar.gz文件是Linux操作系统下的安装版本。zip文件是Windows系统下的压缩版本。对于windows版本,下载以后,直接解压,双击 bin 目录下的 startup.bat 文件,或者在命令行下使用命令启动。输入http://localhost:8080/ 出现一个三条腿的汤姆猫就代表安装成功了。

 

2.      Tomcat 的目录层次结构:


         我们的web项目都会部署到webapps这个目录下。然后tomcat就会自动进行管理。这个目录下面可以同时部署多个项目,但是一般正式的生产环境都会在一个tomcat实例中只部署一个项目。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值