JSF六个底层原理:
--重建组件树:jsf应用里的jsp页面被表示成一个组件树。在这个阶段里,通过重建这棵树开始LifeCycle处理过程。每个组件树都有一个在整个应用程序范围里唯一的标识符,此标识符是所请求URI的路径信息部分
--应用请求值:在这个阶段,使用请求里的当前值来更新每个组件的本地值,这些值可能来自请求参数,请求的包头及cookie。在这个阶段的处理中,组件可以往事件队列里加入某些事件,这些事件可在随后的处理阶段处理
--处理验证:当每个组件的本地值被更新后,在此阶段中LifeCycle对象会验证这些值的合法性。要求验证的组件必须提供验证逻辑的实现。作为选择,开发人员可以为一个组件注册0个或者多个验证器。如果发现外部验证器,那么还会应用这些外部验证器里的验证逻辑来验证本地值。
--更新模型值:只有当组件树中所有的组件的本地值都通过验证后,才有可能到达该阶段。在这个阶段中,LifeCycle更新呢应用的模型数据。组件在这个节点也可以排列事件。
--调用应用:在这个阶段,JSF实现处理所有应用层次的时间。
--呈现响应:在这个阶段,JSF实现将相应发挥客户端。
JSF的生命周期:
恢复视图--应用请求值--处理验证--呈现响应--调用应用程序--更新模型值
JSF的工作方式:
JSF应用是通过处理由页面中组件处罚的事件来工作的。这些事件是由用户的动作引起的。(JSF是事件驱动的)
--创建FacesContext
--把控制权交给LifeCycle
--分六个阶段处理FacesContext
ajax原理:
-----一个异步无刷新的技术,主要是通过在客户端浏览器内置的XMLHttpRequest对象,发送和接收请求。
XMLHttpRequest对象先把请求发送给浏览器中内置的ajax引擎,通过引擎转发给对应的服务器,并且引擎还要负责接收服务器的返回,和服务器进行交互,即时获取服务器的状态。还要负责把服务器的返回发送给客户端。客户端通过XMLHttpRequest对象对返回结果进行解析
Http原理:
----最常见的网络传输协议。速度快,无状态。
----不管客户端用什么频率去请求服务器的资源,服务器只会去响应,而不会去保存客户端的任何状态
Struts原理:
----web服务器启动的时候读取web.xml文档,创建ActionServlet对象。
----当客户端请求发起是,ActionServlet拦截请求,截取特定的请求,获取请求的名称。
----然后读取Struts读取配置文件,根据请求的名称读取相关信息,保存在moduleConfig对象中
----找到其中的ActionMapping和path属性,来进行请求是否匹配的判断
----如果发现有对应的path,则将请求转到对应的Action,并且创建ActionForm对象,获取从请求中传递来的参数,将参数保存在ActionForm中,调用Action的execute方法
----ActionServlet接收Action处理完业务逻辑返回的结果---ActionForward对象
----然后在配置文件找到对应的forward路径,将显示转发或者重定向到找到的路径。
Servlet MVC原理:
----服务器启动的时候读取web.xml,创建servlet对象。
----当客户端发起请求的时候,servlet负责拦截指定的请求,根据请求的方式是get还是post调用对象的doGet或者doPost方法。
----doGet,doPost中通过request或者response控制页面的转发或者重定向
分享到:
相关推荐
这份资源"Java常见笔试、面试题目深度剖析"显然是为了帮助求职者更好地准备相关考试而设计的。以下将对Java笔试和面试的一些核心知识点进行详细的阐述: 1. **基础语法**:Java的基础包括变量、数据类型、运算符、...
"Java IO 模型常见面试题总结" Java IO 模型是 Java 编程语言中的一种输入/输出机制,用于实现计算机系统与外部设备之间的通信过程。在计算机结构中,IO 描述了计算机系统与外部设备之间的通信过程。从应用程序的...
深入学习 JMM 不仅能帮助开发者理解 Java 并发的基础原理,还能提高程序的并发性能,避免因内存可见性问题导致的程序异常。《深入理解 Java 内存模型》这本书详细探讨了这些主题,是 Java 开发者不可或缺的参考资料...
### Java内存模型(有助理解多线程) #### JMM简介 Java内存模型(JMM,Java Memory Model)是Java虚拟机规范中一个重要的概念,它规定了程序中各种变量(包括实例字段、静态字段和数组元素)的访问规则,以及在...
物联网开放平台Q&A_20180326.pdf可能与Java内存模型直接关联不大,但可能是关于物联网平台的常见问题解答,包含了技术问题、应用实践等内容,对于全面了解和开发物联网系统有一定帮助。虽然不在本次讨论的范围内,但...
以下是一些基于“java常见面试题合集”的相关知识点: 1. **基础语法**: - 类与对象:理解类的定义、对象的创建与访问权限。 - 继承与多态:掌握单一继承和接口的多实现,以及方法的重写和重载。 - 封装与抽象...
本文旨在深入探讨Java中的异步技术,包括其背后的原理以及如何在实际场景中运用这些技术来解决常见的问题。文章将从微服务架构下面临的问题入手,逐步过渡到对Java异步技术核心概念的理解,并通过具体的例子进行说明...
在Java中实现逻辑斯蒂回归,我们需要理解其基本原理和步骤,同时掌握相关的编程技巧。 首先,我们要了解逻辑斯蒂回归的核心思想。它的输出是介于0和1之间的概率值,通过sigmoid函数(也称为 logistic 函数)将线性...
原理篇》是一本针对Java程序员的技术面试用书,它详尽地总结了Java面试中常见的核心技术知识点,包括但不限于JVM原理、多线程编程、数据结构与算法、分布式系统设计等。在IT行业求职竞争激烈的背景下,本书为读者...
本压缩包文件包含了一系列常见的Java编程题目,旨在帮助学习者巩固基础,提高解决问题的能力。 1. **冒泡排序**:冒泡排序是最基础的排序算法之一,通过不断交换相邻的逆序元素来逐步完成排序。在Java中,可以使用...
考虑到给定的信息,我们将不包含重复的“每日书籍更新收藏必备***”这一部分内容,我们将专注于阐述“Java网编程原理与JSP.Web开发核心技术”这一主题的知识点。 首先,“Java网编程原理”涉及的是一系列基于Java...
综上所述,"java实现太阳系模型"是一个结合了Java编程、面向对象设计、物理原理、图形界面开发等多个方面技能的综合实践项目,对于提升编程能力和理论知识都有很大的帮助。通过学习和实践这样的项目,开发者不仅能...
##### 1.3 Java运行的原理 Java运行时,JVM的执行引擎负责加载字节码并执行,它通过类加载器将.class文件加载到内存中,并将类的信息存储到方法区。执行引擎执行指令时,会进行字节码的解释和即时编译,确保Java程序...
### Java内存模型详解 #### 一、JMM简介 ##### 1. 内存模型概述 Java内存模型(Java Memory Model, JMM)是Java虚拟机(JVM)的一部分,它规定了程序中各种变量(包括实例字段、静态字段和数组元素)的访问规则,...
本资源包含"Java高级面试题整理(附答案).docx"和"最常见的Java面试题及答案汇总(一).docx"两份文档,旨在为求职者提供全面的准备材料。 1. **Java基础** - 数据类型:包括基本数据类型和引用数据类型的区别与...
了解JVM的工作原理对于提高Java应用程序的性能至关重要。 ### JVM内存模型 #### 堆内存(Heap) 堆是JVM管理的最大块内存区域,用于存储对象实例。堆被划分为新生代和老年代,其中新生代又细分为Eden区和两个...
- **类加载机制**:了解类加载器的工作原理,双亲委派模型。 - **JVM内存结构**:堆、栈、方法区、程序计数器等区域的用途。 13. **Spring框架** - **依赖注入(DI)**:理解IoC容器如何管理对象间的依赖关系。 ...
Java性能调优主要聚焦在JVM的优化,其中包括内存模型的理解、垃圾收集(GC)机制以及如何处理常见的Out of Memory (OOM)异常。首先,我们要理解JVM的内存模型,这是进行性能调优的基础。 JVM内存模型由堆、栈、方法...
JVM的工作原理,如类加载机制、内存模型(堆、栈、方法区等)、字节码执行、性能优化等方面,都是面试官可能会考察的内容。理解这些不仅能帮助解决实际问题,还能提升程序的运行效率。 接着,我们讨论Java多线程和...