03Web服务器基础-10. JavaEE工程概述

2023-12-01 15:08

本文主要是介绍03Web服务器基础-10. JavaEE工程概述,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

知识点:

1、整体概述JavaEE的知识体系

2、JavaEE是什么? 能干什么? 为什么需要JavaEE?

3、JavaEE有什么? JavaEE的技术体系? JavaEE的本质是什么?

4、JavaEE的零散基础知识

5、JavaEE的组件体系结构


先来一张整体的概括图:

技术分享

要知道JavaEE是什么?能干什么? 首先就要说说 “企业级开发”, JavaEE的全称是 Java Platform Enterprise Editiion的首字母缩写,意思是Java平台企业级开发,适于创建服务器的大型应用软件和服务系统. JavaEE只是Java平台的一个版本而已,它也是以Java语言为基础的,只不过多加入了一些适用于企业开发应用的API,并且规范了开发应用系统的框架.

Java目前存在三个版本,分别为JavaSE、JavaEE、JavaME

技术分享

好了,下面说说什么是企业级开发?

简单来说,企业级应用就是大规模的应用,通常具体以下特点:

1.企业级应用系统包含的功能多、功能的业务逻辑比较复杂

2.一般有许多的使用者、比较长的生命周期、系统稳定可靠

3.企业级应用往往是分布式的、组件通常分布在异构(不同的软硬件平台)的计算环境中(指跨平台)

4.对系统的可维护性、可扩展性与可重用性有很高的要求

5.对系统的可配置和可伸缩性有很高的要求

6.需要有事务管理、安全管理、线程管理

从上面的特点可以看出,开发一个企业级应用不是件容易的事情,这些特点也就成为了开发的难点.

如何去解决上面企业级开发的难点呢? ----> 使用JavaEE来解决

好了,现在可以回答:

什么是JavaEE? --> JavaEE是Java平台的一个版本,用于帮助解决企业级应用开发所面临的一系列问题的应用开发平台

JavaEE能干什么? --> JavaEE能帮助解决企业级开发所面临的一系列问题

JavaEE的技术分布:

技术分享

从上图可以看出,JavaEE是由许多技术组合而成的.

从本质上来讲,JavaEE是什么?

1.JavaEE是一个技术集

2.JavaEE是规范集

3.JavaEE是框架集和API集

为什么说JavaEE的本质是上面3句话呢? 请看下图:

技术分享

JavaEE应用开发的特点:

1、JavaEE部分的代码通常是固定的、或是有章可寻的,从代码角度看是非常简单的

2、应用中复杂的业务逻辑,仍然是使用Java来实现的。也就是说JavaEE部分只是相当于一个壳,而真正的逻辑处理还是Java

3、JavaEE部分的难点在于技术众多,如何选择它们、如何组合它们、如何扬长避短使用它们、如何调整和优化它们等等问题。

解决这些问题就需要对这些技术本身非常熟悉,不仅仅是写代码,更重要的是理解这种技术的实现原理、优点缺点、适用场景、运行流程等等,而且要求技术非常全面,必须对用到的所有技术有足够的认识.

JavaEE学习中要注意:

1.学习规范,可以只学与开发人员相关的部分

2.学习相应的API

3.按照规范的要求去写代码和配置

4.一定要分离出JavaEE部分和Java代码部分

5.一定要理解原理和内部的运行流程

JavaEE的零散知识

C/S和B/S

什么是C/S和B/S系统?

1.C/S : Client/Server 客户/服务器模式 B/S : Brower/Server浏览器/服务器模式

2.C/S优点: 能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器,客户端响应速度快

3.B/S优点: 可以在任何有浏览器的地方进行操作而不用在客户端安装任何专门的软件,主要工作都放到服务器上进行

4.C/S缺点:客户端需要安装专用的客户端软件,导致部署和维护困难

5.B/S缺点:有时候服务端的压力会过大,而客户端的资源较为浪费;还有B/S的安全控制了比较弱,网络安全性是个问题

JavaEE的组件体系结构

组件、容器、服务器

1.组件 : 组件可以定义为一种自治的、提供外部公共接口的、动态可用的事务处理过程,组件可以用来构建其它组件或者应用程序。简言之,组件就是能完成一定功能的封装体,小到一个类,大到一个系统。

2.容器: JavaEE的组件是不能独立运行的,必须要为组件提供相应的运行环境,为组件提供运行环境的就是容器

3.服务器:容器也是不能直接运行的,容器必须要运行在应用服务器之上,一个服务器可以同时运行多个不同的容器

三者各自的功能:

1.组件主要由应用开发人员完成,用来实现应用系统的功能

2.容器有两个主要的功能: 一是提供组件运行环境,二是控制组件生命周期

3.服务器也有两个主要功能: 一是提供容器运行环境,二是实现JavaEE规范中的技术要求和功能

技术分享

三者各自的分类:

1.组件分为: 在服务端有放置到Web容器中的Servlet组件,放置到EJB容器中的EJB组件,在客户端就是Applet

2.容器分为: 在服务端有Web容器和EJB容器,在客户端有Applet容器

3.服务器分为:Web服务器(只包含Web容器),JavaEE服务器(同时包含Web容器和EJB容器)

三者的关系:

1.一种容器只能放某种类型的组件,一个容器可以放多个组件,一个组件也可以放到多个容器中

2.一个服务器可以有多个容器,但通常都是不同类型的容器

技术分享

组件如何让容器知道自己呢?

组件自我介绍  -->  部署描述文件  -->  xml格式,要描述的内容固定  -->  规范

容器如何调用组件?

回调方法:由组件开发实现,但是不由组件调用,而是由容器在适当的时候进行调用方法  -->   规范

组件如何访问容器的功能呢?

Context : 上下文,用来提供组件访问容器的功能的能力

这篇关于03Web服务器基础-10. JavaEE工程概述的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/441647

相关文章

Spring三级缓存解决循环依赖的解析过程

《Spring三级缓存解决循环依赖的解析过程》:本文主要介绍Spring三级缓存解决循环依赖的解析过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、循环依赖场景二、三级缓存定义三、解决流程(以ServiceA和ServiceB为例)四、关键机制详解五、设计约

spring IOC的理解之原理和实现过程

《springIOC的理解之原理和实现过程》:本文主要介绍springIOC的理解之原理和实现过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、IoC 核心概念二、核心原理1. 容器架构2. 核心组件3. 工作流程三、关键实现机制1. Bean生命周期2.

解决tomcat启动时报Junit相关错误java.lang.ClassNotFoundException: org.junit.Test问题

《解决tomcat启动时报Junit相关错误java.lang.ClassNotFoundException:org.junit.Test问题》:本文主要介绍解决tomcat启动时报Junit相... 目录tomcat启动时报Junit相关错误Java.lang.ClassNotFoundException

Gradle下如何搭建SpringCloud分布式环境

《Gradle下如何搭建SpringCloud分布式环境》:本文主要介绍Gradle下如何搭建SpringCloud分布式环境问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Gradle下搭建SpringCloud分布式环境1.idea配置好gradle2.创建一个空的gr

JVM垃圾回收机制之GC解读

《JVM垃圾回收机制之GC解读》:本文主要介绍JVM垃圾回收机制之GC,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、死亡对象的判断算法1.1 引用计数算法1.2 可达性分析算法二、垃圾回收算法2.1 标记-清除算法2.2 复制算法2.3 标记-整理算法2.4

springboot集成Lucene的详细指南

《springboot集成Lucene的详细指南》这篇文章主要为大家详细介绍了springboot集成Lucene的详细指南,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以跟随小编一起... 目录添加依赖创建配置类创建实体类创建索引服务类创建搜索服务类创建控制器类使用示例以下是 Spring

Java调用Python的四种方法小结

《Java调用Python的四种方法小结》在现代开发中,结合不同编程语言的优势往往能达到事半功倍的效果,本文将详细介绍四种在Java中调用Python的方法,并推荐一种最常用且实用的方法,希望对大家有... 目录一、在Java类中直接执行python语句二、在Java中直接调用Python脚本三、使用Run

Java根据IP地址实现归属地获取

《Java根据IP地址实现归属地获取》Ip2region是一个离线IP地址定位库和IP定位数据管理框架,这篇文章主要为大家详细介绍了Java如何使用Ip2region实现根据IP地址获取归属地,感兴趣... 目录一、使用Ip2region离线获取1、Ip2region简介2、导包3、下编程载xdb文件4、J

浅析如何使用xstream实现javaBean与xml互转

《浅析如何使用xstream实现javaBean与xml互转》XStream是一个用于将Java对象与XML之间进行转换的库,它非常简单易用,下面将详细介绍如何使用XStream实现JavaBean与... 目录1. 引入依赖2. 定义 JavaBean3. JavaBean 转 XML4. XML 转 J

SpringBoot中四种AOP实战应用场景及代码实现

《SpringBoot中四种AOP实战应用场景及代码实现》面向切面编程(AOP)是Spring框架的核心功能之一,它通过预编译和运行期动态代理实现程序功能的统一维护,在SpringBoot应用中,AO... 目录引言场景一:日志记录与性能监控业务需求实现方案使用示例扩展:MDC实现请求跟踪场景二:权限控制与