WEB开发入门

对服务器的概念需要更新一下:

  从物理上来说,服务器就是一台PC机,至少8核,以T计算,带宽100M以上

  一般有的服务器

    1. web服务器 -- PC机上安装一个具有web服务的软件

    2. 数据库服务器 -- PC机上安装一个具有数据管理服务的软件

    WEB 服务软件

    web 服务软件的作用就是,能够将本地的资源共享给外部访问

     首先得要搞清楚一件事是网络通信最基础的是可以通过你的IP和端口这两个组成的唯一标识符来发送一些101010的二进制文件,所以说我们在用任何语言,只要支持socket编程的都可以接受的到,因为这个通讯的数据是与语言无关的。下面简单的写一个程序来实验一下

package Socket;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;

public class Sever {
    
    public static void main(String[] args) throws Exception{
         // step 1 : creat a socket of ur ip
        ServerSocket server = new ServerSocket(8888);
        
        System.out.println("server connect succedd!");
        // step 2 : to get the socket according to client
        Socket socket = server.accept();
        
        // step 3 : read the local file
        FileInputStream in = new FileInputStream("E:/String.html");
        
        // step 4: creat the path to output the datas in ur socket
        OutputStream outputStream = socket.getOutputStream();
        
        // tep 5 : send the data
        byte[] buf = new byte[1024];
        int len = 0;
        while((len = in.read(buf)) != -1) {
            outputStream.write(buf, 0, len);
        }
        
        // step 6 : close the path
        outputStream.close();
        in.close();
        
    }

}

当然这个是不全面的,只是有个演示下面的这个物理过程

但实际上这个socket服务端程序就是web服务软件,而市场上有恨多成熟的产品供我们使用了,不需要我们去编写,其中只有Tomcat是免费的,但是他所有的功能也就相对来说比较少,但对于中小型的开发已经足够,因为它可以支持的技术就有 servlet,jsp,jdbc

下面我们主要讲Tomcat服务器的使用

    在这里我们都是假设已经安装好了tomcat服务器的情况下,对tomcat进行一个深入的解析

    —首先解压好的tomcat的子目录下主要有下面的几个文件 

      •bin -- 很明显这是一个执行文件,里面会有startup.bat 这类似的命令文件

      •conf -- 这是一个配置文件,存放着tomcat的各种配置信息,其中最重要的server.xml,因为我们可以修改里面的tomcat软件占用的默认端口号

      •lib -- 支持tomcat软件运行的jar包。其中还有技术支持包,如servlet,jsp等等

      •logs -- 日志文件

      •temp -- 临时文件

      •webapps -- WEB应用程序文件,共享资源目录。web应用目录。要注意里面的html不能以单独的文件进行共享。

      •work: tomcat的运行目录。jsp运行时产生的临时文件就存放在这里

    —然后针对开发者我们主要是对webapps里面的文件进行操作

      这里面我们又只对ROOT文件进行操作

      ROOT -- web应用的根目录

              |- 静态资源(html+css+js+image+vedio)

                         |- WEB-INF : 固定写法。

                                   |-classes: (可选)固定写法。存放class字节码文件

                                   |-lib: (可选)固定写法。存放jar包文件。

                                   |-web.xml  

    注意的两点----

                         1)WEB-INF目录里面的资源不能通过浏览器直接访问

                         2)如果希望访问到WEB-INF里面的资源,就必须把资源配置到一个叫web.xml的文件中

我的第一个动态的静态网页开发

  这里我先写一个直接用工具来制作的过程,后面再重新更新一次用手动的写一个servlet

  现在myEclipse里面切换到myeclipse视图,这一点很坑,因为博主我以前一直是用的elipse,elipseEE版本是可以有 dynamic web project工程的,但是我看了一下目录结构后,果断使用了myEclipse

  切换好视图后,直接new 一个web project工程,这里记得要勾选自动生成web.xml

  然后整个工程就在你的目录下了,现在可以在你的这个工程下写一个静态网页,我自己的index.html,然后再你的工程下面的src这个目录下直接new 一个servlet,然后会有配置页面跳出来,主要的是你可以改一下你的servlet的URL ,后面你去访问servlet.class的时候就要在后面写下你当时写的URL的名称。

  之后的工作就是连接tomcat,主要是在Window->preference->tomcat->你的版本->你的tomcat安装目录->finish

  最后就是在copy你的工程到tomcat上,因为你web工程是不能实现共享的,这个主要是由服务器来实现,所以需要把你的工程复制到tomcat下的webapps的目录里面的,这也能解释为什么webapps里面不能只有单独的html,而必须是一个工程文件才能执行实现共享,然后就直接run就可以.

  

    

原文地址:https://www.cnblogs.com/AmoryWang-JavaSunny/p/6240837.html