Java EE平台介绍(译)
Java EE平台介绍
2.1 企业应用总览
这一部分将对企业应用及其设计和开发进行简单介绍。
就像之前说的,Java EE 平台是为了帮助开发者开发大规模、多层次、可伸缩、服务可靠、网络安全的应用而设计的。对于这样的应用我们通常简称为企业应用。之所以这样叫,是因为这种应用都是为了解决大企业所遇到的实际问题而存在的。当然,企业应用不知对大规模企业,政府机构有意义,在这个高速发展的网络写作社会,它对于个人开发者及小型组织一样有着不可或缺的作用。
企业应用通常对安全性及可靠性有着较高的要求,这也使得它变得不可避免的复杂,Java EE平台则通过提供一套通用的开发模式,API,和运行时环境使得开发者能更加的专注于功能性的开发。
2.1.1 多层次应用
在一个多层次的应用中,应用的功能被分割为相对独立的多个不同的功能区域,我们称之为层。一般来说,一个多层次应用包含,客户端应用层、中间层以及后端的数据访问层(通常我们也称之为企业信息系统层)。客户端层包含一系列客户端程序,用于构建相应的客户请求到中间层;中间层则分为web层及业务逻辑层,分别用于处理客户请求及处理应用数据,并将其存储到后端数据持久存储层中。
Java EE 应用开发主要专注于中间层的开发,使得企业应用开发变得更简单,健壮和安全。
2.1.1.1 客户端层
客户端层包括一系列需要访问Java EE服务端应用的客户端应用,这两者通常部署在不同的服务器上,客户端层向服务端发送请求,服务端处理请求并返回处理结果。客户端可以是任何形式的程序,包后浏览器,独立的应用或者其它的服务端程序等,
2.1.1.2 Web层
Web层主要用于处理客户端层及业务逻辑层之间的交互:
为客户端层动态的生成不同格式需求的内容
收集客户端用户请求并返回业务逻辑层处理结果
控制客户端层展现
维护交互会话
执行一些简单的逻辑及存储一些临时性的数据
如下,列出列一些Java EE 应用中设计web层开发的技术。
- JSF
Java Web 应用程序的一个用户界面 (UI) 框架 https://netbeans.org/kb/docs/web/jsf20-intro_zh_CN.html
- 表达式语言
一系列交互式展现标签 https://docs.oracle.com/javaee/1.4/tutorial/doc/JSPIntro7.html
- Servlets
Java 类,动态处理用户请求并返回结果,通常应用于HTML页面
- 上下文及依赖注入
2.1.1.3 业务逻辑层
业务逻辑层主是针对不同行业及领域存在的不同业务需求,相应的开发对应的业务处理功能,这也是一个企业应用的核心功能所在的地方。
业务逻辑层相关技术:
Enterprise JavaBeans (enterprise bean) components :EJB
JAX-RS RESTful web services
Java Persistence API entities
2.1.1.4 企业信息系统层
企业信息系统层(EIS) 包括数据库服务器,企业资源计划系统(ERP)及其它数据服务。数据通常是从企业应用的不同服务器上获取并被业务逻辑层进行处理的。
EIS 层相关技术:
The Java Database Connectivity API (JDBC)
The Java Persistence API
The Java EE Connector Architecture
The Java Transaction API (JTA)
.2 Java EE 服务器和容器
Java EE 服务器是实现了Java EE平台API并能提供标准Java EE服务的服务应用。 Java EE 服务器也通常被称为应用服务器, 如同web服务器向浏览器提供页面一样,它们可将应用的数据传递到客户端。
Java EE服务器以容器的方式运行应用的不同层次组件。使得不同组件之间能够协同作业。
2.2.1 Web容器
Web容器是web组件和web服务之间的联通接口。web可以是servlet,或者JSF页面,web容器负责维护web组件的生命周期,分发用户请求,提供上下文信息(例如当前请求数据)。
2.2.2 EJB 容器
EJB容器负责维护,运行管理EJB组件。
2.2.3 客户端容器
运行于客户端机器,连接客户端应用及服务端应用。
官方文档:https://docs.oracle.com/javaee/7/firstcup/java-ee001.htm
Java EE平台介绍(译)的更多相关文章
- Java技术平台介绍
Java的名字的来源:Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名.Java语言中的许多库类名称,多与咖啡有关, 如JavaBeans(咖啡豆).NetBeans(网络豆)以及ObjectB ...
- JavaEE Tutorials (18) - Java EE平台安全介绍
18.1Java EE安全概述278 18.1.1简单的应用安全演示279 18.1.2安全机制特性281 18.1.3应用安全特点28118.2安全机制282 18.2.1Java SE安全机制28 ...
- [置顶] 遵循Java EE标准体系的开源GIS服务平台架构
传送门 ☞ 系统架构设计 ☞ 转载请注明 ☞ http://blog.csdn.net/leverage_1229 传送门 ☞ GoF23种设计模式 ☞ 转载请注明 ☞ http://blog.csd ...
- 轻量级Java EE企业应用实战(第4版):Struts 2+Spring 4+Hibernate整合开发(含CD光盘1张)
轻量级Java EE企业应用实战(第4版):Struts 2+Spring 4+Hibernate整合开发(含CD光盘1张)(国家级奖项获奖作品升级版,四版累计印刷27次发行量超10万册的轻量级Jav ...
- Java EE发展史
前言 最近的这段时间一直在学习Java EE,刚刚完成了从0到1的蜕变,所以顺便整理一下我所了解到的Java EE,给刚入门学习的新人一些头绪,而所谓“启示录”,就是这个意思. 一.Java EE是什 ...
- Java EE启示录
前言 最近的这段时间一直在学习Java EE,刚刚完成了从0到1的蜕变,所以顺便整理一下我所了解到的Java EE,给刚入门学习的新人一些头绪,而所谓“启示录”,就是这个意思. 一.Java EE是什 ...
- Java EE javax.servlet中的ServletContext接口
ServletContext接口 public interface ServletContext (https://docs.oracle.com/javaee/7/api/javax/servlet ...
- 影响Java EE性能的十大问题(转)
本文作者是一名有10多年经验的高级系统架构师,他的主要专业领域是Java EE.中间件和JVM技术.他在性能优化和提升方面也有很深刻的见解,下面他将和大家分享一下常见的10个影响Java EE性能问题 ...
- 老鸟谈谈JAVA EE的学习
老鸟谈谈JAVA EE的学习 因为出差和项目的原因,有将近一个月的时间没有更新博客了,今天终于得闲,和兄弟们分享一下JAVA EE的学习心得.书中带过,直入主题,下面我们首先看看什么是JAVA EE. ...
随机推荐
- [Luogu1282]多米诺骨牌(DP)
#\(\color{red}{\mathcal{Description}}\) \(Link\) 我们有一堆多米诺骨牌,上下两个部分都有点数,\(But\)我们有一个操作是可以对调上下的点数.若记一块 ...
- 当面试官问你sql优化的时候。。。
当面试官问你有关sql优化的问题时,直接拿笔写给他: 8-select 9-distinct<column_list> 1-from left_table 3-<join_type& ...
- 爬虫实战:汽车之家配置页面 破解伪元素和混淆JS
本篇介绍如何破解汽车之家配置页面的伪元素和混淆的JS. ** 温馨提示:如需转载本文,请注明内容出处.** 本文链接:https://www.cnblogs.com/grom/p/9242156.ht ...
- NOIP2018 Day2毒瘤题目
Day2毒瘤题目 T1:travel 拿到题目,一看,图论,完了...... 仔细看了看题目,诶这个不是dfs序么?当场敲出dfs.跑样例一,过了,结果一跑样例二,当场废掉.(样例二有环,会跑不出正解 ...
- 实现 在子界面的button按下,在主界面的label显示。
不知道理解的对不对,反正功能是实现了. 这是子界面,COM口配置界面的 .H文件的定义.下面的Private:定义了Ui:MainWindow *main_ui;的指针变量 要 注 ...
- BZOJ 5248: [2018多省省队联测]一双木棋(对抗搜索)
Time Limit: 20 Sec Memory Limit: 512 MBSubmit: 439 Solved: 379[Submit][Status][Discuss] Descriptio ...
- python通过xlsxwriter模块将文字写入xlsx文件
#今天和大家一起学习通过python的xlsxwriter模块 xlsxwriter模块主要用来生成excel表格,插入数据.插入图标等表格操作等. 环境:python 3 1)安装 xlsxwrit ...
- vrrp_script不起作用解决方案
我这里主要是因为windows转码造成的:将可执行的check_nginx.sh检测脚本内容复制到U盘,然后插入内网windows,将内容用nodepad++打开,复制,粘贴到服务器的check_ng ...
- echarts通过ajax动态获取数据的方法
echarts表格的数据一般都需要动态获取,所以总结了一下通过ajax动态获取数据的操作: 插入的方法应该不止一种,我也是接触不久,所以刚学会了一种插入方法: 灵感和经验来自:https://www. ...
- 一条常用的 Sql
select * from table where 条件1 .... group by 字段...... Having 条件1.....Limit 0,10; 1. 根据where ...