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

相关文章

Java实现检查多个时间段是否有重合

《Java实现检查多个时间段是否有重合》这篇文章主要为大家详细介绍了如何使用Java实现检查多个时间段是否有重合,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录流程概述步骤详解China编程步骤1:定义时间段类步骤2:添加时间段步骤3:检查时间段是否有重合步骤4:输出结果示例代码结语作

Java中String字符串使用避坑指南

《Java中String字符串使用避坑指南》Java中的String字符串是我们日常编程中用得最多的类之一,看似简单的String使用,却隐藏着不少“坑”,如果不注意,可能会导致性能问题、意外的错误容... 目录8个避坑点如下:1. 字符串的不可变性:每次修改都创建新对象2. 使用 == 比较字符串,陷阱满

Java判断多个时间段是否重合的方法小结

《Java判断多个时间段是否重合的方法小结》这篇文章主要为大家详细介绍了Java中判断多个时间段是否重合的方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录判断多个时间段是否有间隔判断时间段集合是否与某时间段重合判断多个时间段是否有间隔实体类内容public class D

IDEA编译报错“java: 常量字符串过长”的原因及解决方法

《IDEA编译报错“java:常量字符串过长”的原因及解决方法》今天在开发过程中,由于尝试将一个文件的Base64字符串设置为常量,结果导致IDEA编译的时候出现了如下报错java:常量字符串过长,... 目录一、问题描述二、问题原因2.1 理论角度2.2 源码角度三、解决方案解决方案①:StringBui

Java覆盖第三方jar包中的某一个类的实现方法

《Java覆盖第三方jar包中的某一个类的实现方法》在我们日常的开发中,经常需要使用第三方的jar包,有时候我们会发现第三方的jar包中的某一个类有问题,或者我们需要定制化修改其中的逻辑,那么应该如何... 目录一、需求描述二、示例描述三、操作步骤四、验证结果五、实现原理一、需求描述需求描述如下:需要在

Java中ArrayList和LinkedList有什么区别举例详解

《Java中ArrayList和LinkedList有什么区别举例详解》:本文主要介绍Java中ArrayList和LinkedList区别的相关资料,包括数据结构特性、核心操作性能、内存与GC影... 目录一、底层数据结构二、核心操作性能对比三、内存与 GC 影响四、扩容机制五、线程安全与并发方案六、工程

ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法

《ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法》本文介绍了Elasticsearch的基本概念,包括文档和字段、索引和映射,还详细描述了如何通过Docker... 目录1、ElasticSearch概念2、ElasticSearch、Kibana和IK分词器部署

部署Vue项目到服务器后404错误的原因及解决方案

《部署Vue项目到服务器后404错误的原因及解决方案》文章介绍了Vue项目部署步骤以及404错误的解决方案,部署步骤包括构建项目、上传文件、配置Web服务器、重启Nginx和访问域名,404错误通常是... 目录一、vue项目部署步骤二、404错误原因及解决方案错误场景原因分析解决方案一、Vue项目部署步骤

JavaScript中的reduce方法执行过程、使用场景及进阶用法

《JavaScript中的reduce方法执行过程、使用场景及进阶用法》:本文主要介绍JavaScript中的reduce方法执行过程、使用场景及进阶用法的相关资料,reduce是JavaScri... 目录1. 什么是reduce2. reduce语法2.1 语法2.2 参数说明3. reduce执行过程

如何使用Java实现请求deepseek

《如何使用Java实现请求deepseek》这篇文章主要为大家详细介绍了如何使用Java实现请求deepseek功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1.deepseek的api创建2.Java实现请求deepseek2.1 pom文件2.2 json转化文件2.2