文档章节

JavaWeb总结(一):JavaWeb开发入门

husthang
 husthang
发布于 2017/02/17 10:51
字数 1090
阅读 70
收藏 5
点赞 0
评论 0

1、JavaWeb基础知识体系

JavaWeb基础知识体系

2、Web容器、服务器的含义和区别

  1. Web容器,服务器理解 博客推荐
  2. 容器: 举例说明: Servlet没有main()方法。Servlet受控于另一个Java应用,这个Java应用称为容器.
    • 何谓容器 ,关于容器的详解
    • 在具体层面,容器实际上是Java应用程序,运行于JVM之上,不同类型的容器负责不同的工作,例如Servlet/JSP所运行的Web容器(Web Container),功能之一就是把JSP代码翻译成java代码
  3. 服务器,硬件角度上说就是一台高性能的Computer。我们通常指的服务器其实应该是装有能够处理具体请求事务的服务器软件的Computer
  4. Web服务器是指驻留于因特网上某种类型计算机的程序,是可以向发出请求的浏览器提供文档的程序。当Web浏览器(客户端)连到服务器上并请求文件时,服务器将处理该请求并将文件反馈到该浏览器上
  5. Client-Server架构
  6. Client-Server
  7. 动态WEB中,程序依然使用客户端和服务端,客户端依然使用浏览器(IE、FireFox等),通过网络(Network)连接到服务器上,使用HTTP协议发起请求(Request),现在的所有请求都先经过一个WEB Server Plugin(服务器插件)来处理,此插件用于区分是请求的是静态资源(.htm或者是.htm)还是动态资源。
  8. 如果WEB Server Plugin发现客户端请求的是静态资源(.htm或者是.htm),则将请求直接转交给WEB服务器,之后WEB服务从文件系统中取出内容,发送回客户端浏览器进行解析执行。
  9. 如果WEB Server Plugin发现客户端请求的是动态资源(.jsp、.asp/.aspx、.php),则先将请求转交给WEB Container(WEB容器),在WEB Container中连接数据库,从数据库中取出数据等一系列操作后动态拼凑页面的展示内容,拼凑页面的展示内容后,把所有的展示内容交给WEB服务器,之后通过WEB服务器将内容发送回客户端浏览器进行解析执行。

3、Apache、Tomcat与Catalina作为软件名字的含义与关系

  1. JavaWeb中常见这三个词,一直没闹清楚这三个词命名的来源和含义。此处总结:https://my.oschina.net/husthang/blog/840823

4、JavaWeb应用的组成结构

JavaWeb目录结构

5、浏览器与服务器的交互过程

  1. URL:统一资源定位符(即网址) uniform resources location URI:统一资源标识符, uniform resource identify http://localhost:8080/doc/1.html 协议 主机IP(端口号) URI(当前应用的资源路径)
  2. 浏览器与服务器交互过程图 浏览器与服务器交互过程图

6、Tomcat简介

  1. Tomcat目录层次结构
    Tomcat目录结构
    应学会查看logs日志信息来排查错误

     

  2. Tomcat体系结构
    Tomcat体系结构
    Tomcat服务器的启动是基于一个server.xml文件的,Tomcat启动的时候首先会启动一个Server,Server里面就会启动Service,Service里面就会启动多个"Connector(连接器)",每一个连接器都在等待客户机的连接,当有用户使用浏览器去访问服务器上面的web资源时,首先是连接到Connector(连接器),Connector(连接器)是不处理用户的请求的,而是将用户的请求交给一个Engine(引擎)去处理,Engine(引擎)接收到请求后就会解析用户想要访问的Host,然后将请求交给相应的Host,Host收到请求后就会解析出用户想要访问这个Host下面的哪一个Web应用,一个web应用对应一个Context。

     

7、HTTP协议

  1. hypertext transfer protocol(超文本传输协议)
  2. HTTP请求
    • 一个完整的HTTP请求包括如下内容:一个请求行、若干消息头、以及实体内容 范例
    • 第一行请求行 请求方式(get,post) URI 协议版本
  3. HTTP响应
    • 状态码
    • 状态码
    • 一个HTTP响应代表服务器向客户端回送的数据,它包括: 一个状态行、若干消息头、以及实体内容 。
    • http响应

8、参考

JavaWeb开发入门-孤傲苍狼 这篇博客非常值得好好学习一下!

© 著作权归作者所有

共有 人打赏支持
husthang
粉丝 15
博文 23
码字总数 17164
作品 0
武汉
程序员
java&javaweb学习笔记(汇总)

我的java&javaweb学习笔记(汇总) 笔记分为两大部分:javase和javaweb javase javaweb 笔记内容主要是对一些基础特性和编程细节进行总结整理,适合了解java基础语法,想进一步深入学习的人 gi...

brianway ⋅ 2016/02/09 ⋅ 2

Java学习历程

一:入门阶段 学习目标:Java程序员 1: 熟悉jdk,jvm,eclipse,安装于配置jdk 2:熟悉并掌握java的基础语法,类,抽象类,接口,内部类等概念 3: java核心编程,如输入输出流,多线程,集合...

余丰文zmixed ⋅ 2016/07/21 ⋅ 0

java技术路线

在技术方面无论我们怎么学习,总感觉需要提升自已,却又不知道从哪里着手,同时也不知道自己处于哪个水平。这时候就需要有清晰的指示图来指引我们,这样我们能清楚的知道我们在哪方面不足,以...

罗文浩 ⋅ 2015/11/26 ⋅ 1

java进阶之路

Java程序员 高级特性 反射、泛型、注释符、自动装箱和拆箱、枚举类、可变参数、可变返回类型、增强循环、静态导入 核心编程 IO、多线程、实体类、集合类、正则表达式、XML和属性文件 ·图形编...

旋转木马-千里马 ⋅ 2016/01/19 ⋅ 0

Java开发手册及JavaWeb工程师的成长及实践(及进阶)

> 进阶 个人总结的一个中高级Java开发工程师或架构师需要掌握的一些技能- http://geek.csdn.net/news/detail/246999 成为一名合格软件工程师的7点建议- http://blog.csdn.net/dev_csdn/artic...

shareus ⋅ 2016/03/03 ⋅ 0

从java程序员到CTO的成长路线图

很多新人不知道从事java开发,具体的发展路径是怎么样的,甚至很多人都不能区分程序猿和攻城师的区别。包括不少小白,从事java开发都半年,甚至1年了,对职业发展还没有清晰的认证。这非常不...

6pker ⋅ 2013/10/24 ⋅ 2

八,JavaWeb之开发一个纳米级的JSP网站

Eclipse+Tomcat+JDK装好后,就可以正式进行开发了,老规矩,helloworld!创建一个JSP网站,在网站上边打印Hello world!。 8.1创建项目。 首先,新建一个名叫Hello Word的动态网站项目,Fil...

zhanggong ⋅ 2016/01/20 ⋅ 2

给新手的免费资料

Ext.js 学习资料 下载地址:http://zhidao.baidu.com/question/446498141.html 每个网址中提供的下载链接不能保证期下载速度及当你下载时是否失效,使用下载链接中下载操作,或右击"使用迅雷下...

Ryan-瑞恩 ⋅ 2014/06/04 ⋅ 5

搭建环境的步骤----web

一年前我就开始入门javaweb项目开发;然而,到现在我好想还是不太熟悉怎么去搭建一个环境,以及如何部署项目; 搭建环境文档:http://my.oschina.net/u/1394615/blog/308345...

noteman ⋅ 2016/01/08 ⋅ 0

java总结文章

java总结文章 原创地址: http://www.cnblogs.com/Alandre/ (泥沙砖瓦浆木匠),需要转载的,保留下! Thanks Talk is cheap. Show me the code. Written In The Font   图能抵过一切,喜欢咖啡喜...

泥沙砖瓦浆木匠 ⋅ 2014/06/08 ⋅ 2

没有更多内容

加载失败,请刷新页面

加载更多

下一页

如何使用serverchan微信推送告警

之前实现推送告警信息到微信的方法有如下几种: 1、通过企业公众号实现----收费: 2、通过QQ邮箱,在微信平台上开启收到邮件进行提醒; 3、第三方告警平台API,一般也是收费的; 不过最近看文...

问题终结者 ⋅ 31分钟前 ⋅ 0

TCP的RPC

RPC就是远程方法调用(Remote Process Call ),包含了客户端和服务端,涉及了对象的序列化传输。 1.服务端启动,注册远程调用的类2.客户端发送请求信息包含类、方法、参数的一些信息、序列化传...

Cobbage ⋅ 52分钟前 ⋅ 0

IOS-UI UI初步代码布局添加事件

ISO开发界面,UI是必须学习的一部分,其实很早之前想学来了,一直没有沉下心来学习。看到IOS的代码风格和布局就别扭的不行,跟java代码和android布局比较显得不是那么方便,所以一直到现在。...

京一 ⋅ 今天 ⋅ 0

浅谈OpenDaylight的二次开发

OpenDaylight作为一款开源SDN网络控制器,依托于强大的社区支持以及功能特性,成为了目前主流的SDN网络控制器开发平台。在比较稳定的OpenDaylight Helium版本中,已经为开发者提供了大量的网...

wangxuwei ⋅ 今天 ⋅ 0

API 开发中可选择传递 token 接口遇到的一个坑

在做 API 开发时,不可避免会涉及到登录验证,我使用的是jwt-auth 在登录中会经常遇到一个token过期的问题,在config/jwt.php默认设置中,这个过期时间是一个小时,不过为了安全也可以设置更...

等月人 ⋅ 今天 ⋅ 0

Java NIO之文件处理

程序要操作本地操作系统的一个文件,可以分为以下三个部分: 对文件位置的操作 对文件的操作 对文件内容的操作 其中,对文件内容的操作在 Java NIO之Channel 中已经有了介绍,通过FileChann...

士别三日 ⋅ 今天 ⋅ 0

Maven的pom.xml配置文件详解

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.......

小海bug ⋅ 今天 ⋅ 0

解决httpclient超时设置不生效的问题

最近公司有项目需要通过http调用第三方服务,且第三方服务偶有超时,故需要设置一定的超时时间防止不响应的情况出现。 初始设置如下: [java] view plain copy //超时设置 RequestConfig re...

Mr_Tea伯奕 ⋅ 今天 ⋅ 0

过滤器Filter和拦截器HandlerInterceptor

过滤器 依赖于servlet容器。在实现上基于函数回调,可以对几乎所有请求进行过滤,但是缺点是一个过滤器实例只能在容器初始化时调用一次。使用过滤器的目的是用来做一些过滤操作,获取我们想要...

hutaishi ⋅ 今天 ⋅ 0

Redis入门详解(转)

Redis入门详解 Redis简介 Redis安装 Redis配置 Redis数据类型 Redis功能 持久化 主从复制 事务支持 发布订阅 管道 虚拟内存 Redis性能 Redis部署 Redis应用场景 Redis总结 Redis简介: Redi...

xiaoyaoyoufang ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部