美文网首页
《深入分析Java Web》

《深入分析Java Web》

作者: Grey____ | 来源:发表于2018-11-20 20:19 被阅读0次

第一章 深入Web请求过程

用户在浏览器输入一个网址,整个过程是URL通过DNS域名解析成IP地址,然后向这个IP地址的服务器发起GET请求。(经过服务器负载)服务器返回数据给浏览器,当浏览器解析到一些静态资源时,又会发起另外的HTTP请求,再次经过DNS解析,(如果存在)返回给浏览器最近的CDN节点。

发起一个请求:解析成IP,根据IP和默认端口80与远程服务器建立socket连接,然后根据这个URL组装成一个GET类型的HTTP请求(outputStream.write())发送到目标服务器,目标服务器接收(inputStream.read),然后再返回数据,连接断开。

DNS域名解析过程:1.浏览器缓存 2.本机hosts文件 3.本地区域名服务器(LDNS)4.LNDS访问ROOT Server 5.LNDS拿到ROOT Server返回的主域名服务器(gTLD),去请求gTLD 6.LDNS拿到gTLD返回的Name Server去请求Name Server 7.Name Server查询域名和IP的映射关系表,返回目标IP给LDNS 8.LDNS返回给用户

第十三章 Spring框架的设计理念与设计模式分析

Spring的三大核心组件:Context、Core、Bean

我们为什么用Spring?因为Spring解决了一个非常关键的问题,它可以让你把对象之间的依赖关系转而用配置文件来管理,也就是它的依赖注入机制。而这个注入关系在一个叫IOC的容器中管理。在这个IOC容器中,就是被Bean包裹的对象们。Spring正是通过把对象包装在Bean中从而达到管理这些对象以及一系列额外操作的目的

核心组件如何协同工作?Bean包装Object,而Object必然有数据,Context为这些数据提供生存环境(提供运行时环境,用以保存各对象状态),并且要发现每个Bean之间的关系,并维护好这些Bean的关系。所以Context就是一个Bean关系的集合,这个关系集合又叫IOC容器。而Core组件就是一系列的工具,帮你去发现、建立和维护Bean之间的关系。Core更贴切的说应该是个Util工具类。

  • Bean组件
    Bean组件在Spring的org.springframework.beans包下,在这个包下的所有类主要解决3件事,Bean的定义,创建,解析。
    Bean的创建:它的顶级接口是BeanFactory,典型的工厂模式
    Bean的定义:主要由BeanDefinition描述
    Bean的解析:Bean的解析非常复杂,功能被分的很细,Bean的解析主要就是对Spring配置文件的解析。

  • Context组件
    ApplicationContext是Context的顶级父类,它除了能标识一个应用环境的基本信息外,还继承了5个接口,用于扩展Context的功能。Application继承了BeanFactory,说明了Spirng容器中运行的主体对象是Bean,另外ApplicationContext继承了ResourceLoader接口,使得ApplicationContext可以访问任何外部资源。
    ApplicationContext的子类主要包含两个方面:
    · CpnfigurableApplicationContext:表示该Context是可修改的,其中最经常使用的是可更新的Context,即AbstractRefreshableApplicationContext类
    · WebApplicationContext:顾名思义就是为Web准备的Context
    总体来说ApplicationContext必须要完成以下几件事
    · 标识一个应用环境
    · 利用BeanFactory创建Bean对象
    ` 保存对象关系表
    · 能够捕获各种事件
    Context作为Spring的IOC容器,基本上整合了Spring大部分功能,或者说是大部分功能的基础

  • Core组件
    Core包含了很多关键类,其中很重要的一个就是定义了资源的访问方式(提供和加载资源标准,以接口定义的方式)。

相关文章

  • Java Web

    ref: 深入分析Java Web技术内幕 总结:Spring事务配置 Ch 1 深入Web请求过程 CDNCon...

  • java class文件结构

    (<深入分析Java Web技术内幕>笔记)java语言在宣传时打出的名号就是"一次编译,到处运行", 也就是支持...

  • 《深入分析Java Web》

    第一章 深入Web请求过程 用户在浏览器输入一个网址,整个过程是URL通过DNS域名解析成IP地址,然后向这个IP...

  • javac编译原理

    第二章 Javac编译原理 注:本文主要记录自《深入分析java web技术内幕》"第四章 javac编译原理" ...

  • 深入理解Java Web技术笔记

    这里只会记录我有印象的要点,不会对要点进行分析,因为具体分析,可以参考<深入分析Java Web技术(修订版)>这...

  • 深入理解Session与Cookie

    此文知识来自于:《深入分析Java_Web技术》第十章现代session与cookie的应用 本章概要:当我们的一...

  • 浅入深出Session

    在难也要学完《深入分析的Java Web》的深入理解Session与Cookie,断断续续花了三四天的时间在学习这...

  • 深入分析java web技术内幕

    此书时候闲暇时间阅读,或者寻求技术难题解决方案的时候阅读。 但是直接I/O有负面影响,如果访问的数据不在应用程序缓...

  • JavaWeb笔记之——Web请求过程

    本文总结自《深入分析Java Web技术内幕》一书。全篇内容大致先从一个面试经常问及的问题说起,然后再介绍各个主要...

  • 深入分析java Web技术内幕 - web请求(1)

    如何发起一个htpp请求 简单的说,发起一个HTTP请求的过程就是建立一个Socket通信的过程,且HTTP请求的...

网友评论

      本文标题:《深入分析Java Web》

      本文链接:https://www.haomeiwen.com/subject/gqxfqqtx.html