WEB相关知识

1.Internet上供外界访问的Web资源分为:

静态web资源:指web页面中供人们浏览的数据始终是不变的。

动态web资源:指web页面中供人们浏览的数据是由程序产生的,不同时间点访问web页面看到的内容各不相同。

2.WEB服务器

1)一个简单的模拟web服务器的代码

eg:

package cn.lsl.server;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class MyServer {
public static void main(String[] args) throws Exception {
ServerSocket server = new ServerSocket(9999);
while(true){
Socket socket = server.accept();
//给用户返回数据
OutputStream out = socket.getOutputStream();
//读取磁盘上的文件
InputStream in = new FileInputStream("F:\\a.html"); int len = -1;
byte b[] = new byte[1024];
while((len=in.read(b))!=-1){
out.write(b, 0, len);
}
in.close();
socket.close();
}
}
}

通过http://ip地址:9999/来访问

2)常用的服务器

WebLogic:支持JavaEE规范。称之为JavaEE容器:属于重量级服务器。

(注:即实现了什么规范的服务器就叫做什么容器。)

WebSphereAS(Application Server):支持JavaEE规范

JbossAS:支持JavaEE规范。免费

Tomcat:支持Servlet/JSP规范。轻量级服务器。

Tomcat服务器

1. Tomcat的安装与启动遇到的问题

1)注意:不要把Tocmat装到有中文或空格的目录中。

2)验证Tomcat是否成功

a、进入Tomcat\bin,执行startup.bat

b、启动过程中没有出错。最好还要打开浏览器:http://localhost:8080

3)启动Tomcat遇到的问题:

a、无法启动:配置系统环境变量JAVA_HOME=你的JDK的安装目录

Tips:

HTTP协议规定,Web应用的默认端口是80

把Tomcat使用的默认端口8080改为Web应用的默认端口80?

在TOmcat\conf目录中有一个server.xml

找到8080改为80,就可以使用默认端口了。

4)Catalina_home=Tomcat的安装目录(不建议使用)

2. Tomcat的目录结构

bin:运行Tomcat的相关命令

conf:Tomcat的配置信息所在

lib:Tomcat运行需要的jar包

logs:TOmcat的运行日志

temp:存放临时文件的

webapps:Web应用的存放目录。该目录中的每个目录都代表一个应用。

work:Tomcat的工作目录

JavaWeb应用的目录结构

1.例如MyApp

MyApp:(目录,应用的名称)

---1.html

---css

---------a.css

---WEB-INF:此目录必须有,且大小必须完全一致。该目录中的资源,用户无法直接访问到。(非常重要)

---------classes:存放Java类的字节码

---------lib:存放本应用需要的jar包

---------web.xml:本应用的配置文件

部署自己的应用到Tomcat中

方式一:把你的应用拷贝到Tomcat\webapps目录下。

方式二:把自己的应用打包成war包,再拷贝到Tomcat\webapps目录下

进入你的应用目录

执行:jar -cvf MyApp.war .

Tomcat配置虚拟目录

方式一:(不建议使用,原因就是需要重新启动)

1)修改Tomcat\conf\server.xml,找到<Host name="localhost"/>元素

2)在其中增加一个子元素,内容如下:

<Context path="/hello" docBase="E:\MyApp"/>

注:path:虚拟目录的名称。给用户来访问的。docBase:实际应用的存放目录

3)重新启动Tomcat

4)访问资源:http://localhost:8080/hello/1.html就是访问E盘下MyApp目录中的1.html

方式二:

在Tomcat\conf\[enginename]\[hostname]目录下建立一个特殊的文件,文件扩展名为xml;

文件的主文件名就是映射的虚拟路径(即<Context path="/hello" docBase="E:\MyApp"/>中的path)

增加以下内容:(hello.xml)

<?xml version="1.0"?>
<Context docBase="E:\MyApp"/>

扩展:配置E盘上的MyApp作为默认应用

1)在Tomcat\conf\[enginename]\[hostname]目录下建立一个特殊的文件,文件名ROOT.xml;

2)由于默认应用特殊,也需要重新启动Tomcat

访问MyApp下的1.html

http://locahost:8080/1.html

WEB相关知识和Tomcat服务器的更多相关文章

  1. JAVA WEB学习笔记(二):Tomcat服务器的安装及配置

    一.Tomcat的下载及安装. 前往Tomcat官网下载安装包或者免安装压缩包.链接http://tomcat.apache.org/ 这里,我选择的是Tomcat8.0,而不是最新的Tomcat9. ...

  2. java web 学习三(Tomcat 服务器学习和使用2)

    一.打包JavaWeb应用 在Java中,使用"jar"命令来对将JavaWeb应用打包成一个War包,jar命令的用法如下:

  3. java web 学习二(Tomcat服务器学习和使用1)

    一.Tomcat服务器端口的配置 Tomcat的所有配置都放在conf文件夹之中,里面的server.xml文件是配置的核心文件. 如果想修改Tomcat服务器的启动端口,则可以在server.xml ...

  4. 将eclipse上的web项目部署到Tomcat服务器上经验总结

    1.  将Tomcat插件添加到eclipse上 Window --> Preferences --> Server --> Runtime Environment --> A ...

  5. 在 eclipse 中将 web 项目部署到 tomcat 服务器上

    1.在 eclipse 中,选择 Window--->Preferences--->Server--->Runtime Environments,选择 Add 按钮 2.在弹出的对话 ...

  6. Web项目运行时tomcat服务器启动失败

    在实现项目的过程中,tomcat服务器启动失败的情况本人遇到了三种: 1.tomcat服务器的端口被占用. 可能的原因:a.服务器已经启动的时候你又一次启动了服务器 b.别的服务占用了服务器的端口(一 ...

  7. web相关知识

    1,网络编程/网站编程:敲一个网站,别人可以访问 访问:在地址栏里面敲入地址,就可以访问了. 服务器如果放在公网,那么别人就可以通过IP地址进行访问 所以我们可以先在本地把我们的网站搭好,别人就可以来 ...

  8. web 项目 布在tomcat服务器上出现的问题小记

    1.mysql  安装前需要安装.net framework 框架 mysql  无法安装  最后一布,start server 服务起不来. 原因,为上一次mysql没有删除,干净,导入无法安装. ...

  9. Linux系统(将web应用部署到tomcat服务器上)

    一:tomcat服务开机自启动 将启动命令路径配置到/etc/profile文件中在/etc/profile 文件最后配置 /usr/tomcat/apache-tomcat-6.0.45/bin/s ...

随机推荐

  1. Android NDK的C++11标准支持

    C++11于Android NDK它已被支持,本文介绍了如何NDK添加C++11支持标准. 在开源项目Cocos2d-x于,他已经加入C++11支持标准. 1.改动Application.mk文件,加 ...

  2. WinForm播放视频

    原文:WinForm播放视频 1背景 这几天一老友要求我做个小软件,在WinForm播放视频.印象中微软有个WM控件直接可以使用,晚上研究下 2实现方式 2.1微软草根 最简单的方式,是直接使用微软的 ...

  3. SQL编程之生日问题

    在学习MySQL的时候,一个较为经典的SQL编程题目就是生日问题,已知某个用户的出生日期和当前日期,计算他近期的生日. 一般须要考虑两个问题 闰年2月是29天 今年的生日是否过完 比如:某人的生日是1 ...

  4. Silverlight中的Path

    原文:Silverlight中的Path 在Silverlight中Path可能由直线.曲线.或者其他简单的图形对象组成.这篇文章旨在介绍如何使用XAML和C#来创建Path. 废话先行 Path可能 ...

  5. 条形码(JBarcode)

    一世尘梦 少小离家老大回,妖娆尘世,程序唧唧:问君能有几多愁,恰是满屏BUG无处修. 商品条形码(JBarcode) 之前没有使用过这个,现在使用JBarcode生成商品条形码,工作之前的准备工作: ...

  6. 【转】关于“ORA-01653: 表 SYS.AUD$ 无法通过 128 (在表空间 SYSTEM 中) 扩展”的错误

    SQL*Plus: Release 11.1.0.6.0 - Production on 星期一 5月 17 18:31:08 2010 Copyright (c) 1982, 2007, Oracl ...

  7. phpStorm+XDebug+chrome 配置

    运行环境: phpStorm 10.0.1 PHP 5.6.24 VC11 x86 Thread Safe Xdebug 2.4.1(PHP 5.6 VC11 TS (32 bit) 1. PHP安装 ...

  8. .NET源代码的内部排序实现

    使用JetBrains的DotPeek工具能够方便地查看.net的部分源代码.于是看了一下.NET的内部是怎样实现排序的算法. 在System.Collections.Generic 命名空间下能够看 ...

  9. selenium2入门 用Yaml文件进行元素管理 (五)

    比如界面有一个按钮,id号是test.如果进行对象化的话,就是test.click就可以了.不用每次都要去创建test对象.如果id号变了,我们也只需要改一下test的名称就行了. 使用Yaml需要用 ...

  10. 快速构建Windows 8风格应用29-捕获图片与视频

    原文:快速构建Windows 8风格应用29-捕获图片与视频 引言 本篇博文主要介绍Windows 8中相机的概念.捕获图片与视频的基本原理.如何实现捕获图片与视频.相机最佳实践. 一.相机 关于相机 ...