静态网页和动态网页

静态网页:在服务器上没有经过服务器解释执行的网页。

动态网页:在服务器上经过服务器解释执行的网页。

无论是静态网页还是动态网页,客户端看到的网页都是由HTML所构成的,所以JavaWeb开发需要懂HTML

Servlet和Servlet容器

Servlet:是一些实现了特定接口的Java类的集合。

Servlet容器是JSP/Servlet代码运行的地方,是管理JSP/Servlet的地方。

其实Servlet容器就是一个服务器软件,比如Tomcat。

HTTP协议

浏览器请求服务器网页的过程,遵循HTTP协议,所以请求服务器的网页可以叫做发送HTTP请求给服务器,而服务器返回网页给浏览器可以叫做返回HTTP响应给浏览器。

HTTP协议就是在要发送的信息前面添加某些控制信息,形成HTTP请求或者HTTP响应,这样服务器才知道浏览器请求了什么信息,浏览器才知道服务器发送了什么信息。

具体添加哪些信息,请戳这

浏览器HTTP请求的过程

1.在浏览器地址栏输入网址

2.网址经DNS解析成ip地址,DNS将ip地址返回给浏览器。(如果浏览器的缓存中有该网址所对应的ip,那么就不会像DNS发送请求。

3.发送HTTP给ip地址所对应的服务器。

4.服务器中的服务器软件(如Tomcat)获得请求信息。

5.如果请求的静态网页,则直接返回给浏览器;如果请求的是动态网页,则在Servlet容器中执行后,生成网页结果,然后发送给浏览器。

6.浏览器收到HTTP响应。

安装Tomcat

1.Mac电脑上下载.zip后解压成文件夹,然后随便找一个地方放置该文件夹,我放在/Library目录下。

2.进入bin目录,执行sudo chmod 755 *.sh ,将bin目录所有有关服务器的脚本设置成可运行,常用的是startup.sh和shutdown.sh。

3.设置java的bin目录的环境变量,因为Tomcat作为Servlet容器,肯定要运行java命令来编译代码;设置Tomcat的bin目录的环境变量,这样在shell的任何地方都可以使用脚本命令,而不去切换到Tomcat的bin目录下才能使用命令。

4.在浏览器输入http://localhost:8080,如果能正常访问,说明安装成功。

Tomcat的目录结构

bin:存放tomcat的各种脚本文件,启动服务器startup.sh,关闭服务器shutdown.sh。
conf:存放tomcat的配置文件,如果服务器运行时修改了配置文件,那么必须重启服务器,才回重新读取配置文件。
logs:存放日志文件,当有bug发生时,就看看日志文件。
temp:存储tomcat运行时产生的临时文件。
webapps:web应用所在的目录,写好的应用放在这里才能访问。
work:tomcat的工作目录。

Web App目录结构

Servlet规范定义了web应用程序的目录层次。

WebRoot:Web应用的根目录,该文件夹下有WEB-INF目录,还有html页面和jsp页面。部署web应用时,就是将这个文件夹拷贝到Tomcat的webapps文件夹下。
WEB-INF:该目录下有web.xml,该文件是Web应用的配置文件,还有classes文件夹和lib文件夹。
classes:写好的java代码编译成class文件后,放到这个目录下。
lib:放置jar包
 
 

JavaWeb学习总结(一)JavaWeb开发入门的更多相关文章

  1. JavaWeb学习总结(一)——JavaWeb开发入门

    http://www.cnblogs.com/xdp-gacl/p/3729033.html 只为成功找方法,不为失败找借口! JavaWeb学习总结(一)--JavaWeb开发入门 一.基本概念 1 ...

  2. JavaWeb学习总结-01 JavaWeb开发入门

    一 基本概念 1 Web开发的相关知识 Web,表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资源分为: 静态web资源(如html 页面): ...

  3. javaweb学习总结(六)——Servlet开发(二)

    一.ServletConfig讲解 1.1.配置Servlet初始化参数 在Servlet的配置文件web.xml中,可以使用一个或多个<init-param>标签为servlet配置一些 ...

  4. javaweb学习总结(六)——Servlet开发(二)(转)

    转载自 http://www.cnblogs.com/xdp-gacl/p/3763559.html 一.ServletConfig讲解 1.1.配置Servlet初始化参数 在Servlet的配置文 ...

  5. JavaWeb学习总结(一)——JavaWeb开发入门(转载)

    转载自http://www.cnblogs.com/xdp-gacl/p/3729033.html感谢孤傲苍狼的分享. 一.基本概念 1.1.WEB开发的相关知识 WEB,在英语中web即表示网页的意 ...

  6. JavaWeb学习总结(一)——JavaWeb开发入门(转)

    转载自 http://www.cnblogs.com/xdp-gacl/p/3729033.html 一.基本概念 1.1.WEB开发的相关知识 WEB,在英语中web即表示网页的意思,它用于表示In ...

  7. JavaWeb学习 (二十)————JavaWeb的两种开发模式

    一.JSP+JavaBean开发模式 1.1.jsp+javabean开发模式架构 jsp+javabean开发模式的架构图如下图(图1-1)所示

  8. javaweb学习总结(五)——Servlet开发(一)

    一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向 ...

  9. javaweb学习总结——Filter高级开发

    在filter中可以得到代表用户请求和响应的request.response对象,因此在编程中可以使用Decorator(装饰器)模式对request.response对象进行包装,再把包装对象传给目 ...

  10. javaweb学习总结(五)——Servlet开发(一)(转)

    转载自 http://www.cnblogs.com/xdp-gacl/p/3760336.html 一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun ...

随机推荐

  1. JDK 安装以及环境变量的配置(Windows)

    首先下载对应版本的jdk ,然后安装,这里使用的是jdk 1.7的安装的 这个时候,JDK 已经安装完成,打开cmd 输入 java -version 就可以查看到,当前JDK 的版本如图 JDK 安 ...

  2. Delphi安装NT服务程序时(不出现提示信息)

    如果我们不加上"/silent",那么Delphi在安装和卸载NT服务程序时候,都会出现一个提示信息,不希望出现这个提示信息,那么使用如下命令: 1,安装:“你的nt程序 /ins ...

  3. 头文件 boost/cstdint.hpp

    Header boost/cstdint.hpp 头文件 boost/cstdint.hpp  头文件 <boost/cstdint.hpp> 提供了用于编写要求指定整数宽度的可移植代码的 ...

  4. C# MVC 自学笔记—2 MVC Movie简介

    MVC Movie是微软官方的一个MVC入门项目,我们可以跟着这个项目来实践入门 这是官方地址 http://www.asp.net/mvc/tutorials/mvc-4/getting-start ...

  5. Swift - 点击输入框外部屏幕关闭虚拟键盘

    我们如果把文本框的Return Key设置成Done,然后在storyboard中将文本框的Did End On Exit事件在代码里进行关联.同时关联代码里调用文本框的resignFirstResp ...

  6. ALV调用的几个标准函数

    ALV的调用主要由以下几个标准函数实现,所有函数的输入输出参数必须大写,否则系统会出现异常中止,相关函数如下: 1)REUSE_ALV_FIENDCATALOG_MERGE:根据内表结构返回FIELD ...

  7. vc 在edit控件中动态插入数据滚动显示

    内存从网上论坛摘抄整理 思路:给控件设置多行属性,设置垂直滚动条,Auto Vscroll设置为true,放入文本后把插入点设置到末尾 pEdit->LineScroll(pEdit->G ...

  8. MFC消息映射的原理:笔记

    多态的实现机制有两种,一是通过查找绝对位置表,二是查找名称表:两者各有优缺点,那么为什么mfc的消息映射采用了第二种方法,而不是c++使用的第一种呢?因为在mfc的gui类库是一个庞大的继承体系,而里 ...

  9. Android代码混淆和项目宣布步骤记录器

    原本放在一起Android项目与发布的文件相混淆.我突然想到,为什么不写博客,分享.有这篇文章的情况下,. Android代码混淆及项目公布步骤记录 一.清理代码中的调试信息,如Log.System. ...

  10. iOS高效开源类库

    因为iOS SDK相对比较底层,所以开发者就得受累多做一些体力活.不过幸运的是,有很多第三方的类库可以用来简化很多不必要的工作.笔者整理了一下在本人学习过程中用到的一些比较有用Objective-C开 ...