第1章 java EE应用
1.Java平台分为Java SE,Java EE和Java ME三个版本。
Java EE(Java Platform Enterprise Edition)是sun公司为企业应用推出的标准开发平台。
Java SE(Standard Edition ,标准版)
Java ME(Micro Edition,微型版)
2.JAVA EE分层架构:
- 实体层(POJO层):由POJO(Plain Old Java Object,普通的传统Java对象)组成,这些对象代表系统的实体,通常与数据库中表对应,主要作用是数据保存起来,即持久化数据,一般保存在数据库或文件中。
- 数据访问层(Dao层):由Dao(Data Access Object)组件,这些DAO组件提供对实体对象的创建,查询,删除和修改等操作。
- 业务逻辑层(Service层):由业务逻辑对象组成,用于实现系统
- 控制器层(Controller层),由控制器组成,用于响应请求,并调用业务逻辑组件的对应业务方法处理用户请求,然后根据处理结果转发到不同的表现层组件。
- 表现层(View层):由页面(如JSP,HTML)或其他视图组件组成,负责收集用户请求,并显示处理结果。
图 JAVA EE应用分层架构
3.Model体系:
图 Model1系统
在Model1系统中,JSP页面负责响应用户请求并处理结果返回用户,JSP既要负责业务流程控制,又要负责提供表示层数据.同时充当视图和控制器.因此,开发效率非常高。
尽管Model1体系十分适合简单应用的需求,但从工程化角度来看,局限性非常明显:
JSP页面身兼View和Controller两个角色,控制逻辑和表现逻辑混杂在一起,从而导致代码的重用性非常低,增加了应用的扩展和维护的难度,不适合开发复杂的大型应用程序。另外不加选择地运用Model 1,会导致JSP页面嵌入大量的Java代码,尽管这对Java程序员来说不是什么大问题,但如果JSP页面是由网页美工设计人员开发并维护的,则增加了其维护难度。从本质上分析,Model1体系将导致角色定义不清和职责分配不明,给项目管理带来很多麻烦。
4.Model2
Model2模式下,JSP继续实现视图的功能,而控制器的功能用Servlet技术支持,模型功能用JavaBean技术实现。
5.MVC思想
MVC英文即Model-View-Controller,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层——模型层、视图层、控制层。
模型(Model):就是业务流程/状态的处理以及业务规则的制定。业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。业务模型的设计可以说是MVC最主要的核心。目前流行的EJB模型就是一个典型的应用例子,它从应用技术实现的角度对模型做了进一步的划分,以便充分利用现有的组件,但它不能作为应用设计模型的框架。它仅仅告诉你按这种模型设计就可以利用某些技术组件,从而减少了技术上的困难。对一个开发者来说,就可以专注于业务模型的设计。MVC设计模式告诉我们,把应用的模型按一定的规则抽取出来,抽取的层次很重要,这也是判断开发人员是否优秀的设计依据。抽象与具体不能隔得太远,也不能太近。MVC并没有提供模型的设计方法,而只告诉你应该组织管理这些模型,以便于模型的重构和提高重用性。我们可以用对象编程来做比喻,MVC定义了一个顶级类,告诉它的子类你只能做这些,但没法限制你能做这些。这点对编程的开发人员非常重要
业务模型还有一个很重要的模型那就是数据模型。数据模型主要指实体对象的数据 保存(持续化)。比如将一张订单保存到数据库,从数据库获取订单。我们可以将这个模型单独列出,所有有关数据库的操作只限制在该模型中。
视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML、XML和Applet。随着应用的复杂性和规模性,界面的处理也变得具有挑战性。一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。业务流程的处理交予模型(Model)处理。比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型。
控制(Controller)可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成用户的请求。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不做任何的数据处理。例如,用户点击一个连接,控制层接受请求后, 并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。因此,一个模型可能对应多个视图,一个视图可能对应多个模型。
第1章 java EE应用相关推荐
- Java EE入门教程系列第一章Java EE的概述(一)——初识Java EE
题外话:这个系列是为了记录学习Java EE的轨迹,也算是读书笔记,是我先看完了一遍教程对相关概念有了一个大体印象以后准备再重头细看一遍时同步写的博客.感想就是其实以前课堂上老师教的课都是很有作用的, ...
- java ee 值范围_一篇文章带你读懂: Java EE
原标题:一篇文章带你读懂: Java EE 点击上图,查看教学大纲 何为 Java EE Java EE是一个标准中间件体系结构 不要被名称"Java PlatformEnterprise ...
- java ee6教程_《Java EE 6 企业级应用开发教程》怎么样_目录_pdf在线阅读 - 课课家教育...
第1章 java EE概述 1.1 Java EE的产生与发展 1.2 Java EE 6架构 1.3 Java EE 6常用技术 1.4 Java EE 6特性 1.5 Java EE 6应用服务器 ...
- java ee web高级,Java EE Web高级开发案例
核心提示:Java EE Web高级开发案例 内容简介:<Java EE Web高级开发案例>充分体现了高等职业教育的特点,突出了理论和实践的紧密结合,以充分掌握基本技术技能和必要的基本知 ...
- java ee 7精粹_Java EE 7精粹 ([美]Arun Gupta) 中文pdf扫描版[68MB]
Java EE 7是Java EE最新版本的平台,它为建立Web应用和企业应用提供了简单.易用和全栈式的服务. Java EE 7精粹这本书提供了Java EE 7平台中关键规范的概述.全书共16个章 ...
- java ee web pdf_Java EE Web高级开发案例 PDF扫描版[69MB]
Java EE Web高级开发案例 内容简介: <Java EE Web高级开发案例>充分体现了高等职业教育的特点,突出了理论和实践的紧密结合,以充分掌握基本技术技能和必要的基本知识为出发 ...
- Java EE架构师认证
SCEA Java EE架构师认证考试. 本考试由三部分组成: 1. 多选题测试. 2. 任务指派. 3. 对指派的任务进行陈述和测试.即简答部分. 第一章 什么是体 ...
- 《Java EE 轻量级框架应用与开发——S2SH》笔记
嗯,那本书看完了,但是还没有整理完笔记,不太愿意在电脑旁太久,总会看到她,嗯,所以大部分时间在图书馆,只能刷这本书,哎,这些时日,大概是我一生中仅有的阴霾吧,我希望如此,不知道,希望早些赚钱,以此偿还 ...
- 《Java EE 7精粹》—— 第3章 JSF 3.1 Facelets
本节书摘来异步社区<Java EE 7精粹>一书中的第2章,第2.1节,作者:[美]Arun Gupta,更多章节内容可以访问云栖社区"异步社区"公众号查看. 第3章 ...
- 第1章 Java基本概念及环境配置——FAQ1.05 Java SE. Java EE和Java ME有什么区别?
FAQ1.05 Java SE. Java EE和Java ME有什么区别? 答: 1.什么是Java SE? J2SE,便准版的Java平台是一个Java2的平台,为用户提供一个程序开发环境.这个开 ...
最新文章
- 如何删除exchange2007默认证书
- PHP面试题:windows平台, Apache Http Server启动失败, 排错思路是什么?
- 输出枚举类型的值(seqmentation fault)
- InceptionNet与mobileNet
- 关闭Windows Defender保护
- Unity的lua项目为Tolua# 编译云风版protobuf
- leaflet地图原理_leaflet在线地图简介
- 【解决方案】数字孪生智慧光伏电站三维可视化系统
- vip地址能ping不通_ping不通地址
- addobe dwcs6静态表格
- [图]部分Surface Book 2升级Windows 10 May 2019出现显卡兼容问题
- C++之面向对象(上)
- Xcode 工程清理瘦身
- 一些java基础题答案汇总
- hadoop全家桶部署手册hadoop-solr-ranger-atlas-hive-hbase...
- “50份简历没获得面试”也正常
- 给伸手党的福利:Python 新手入门引导
- @Validated校验常用
- Java 线程池作用及类型
- C++ 流(stream)总结
热门文章
- 银行mysql面试题_mysql的常见面试题
- 物联网专业有哪些含金量高的比赛?
- svn 文件夹没有绿勾红感叹号图标
- 『Python开发实战菜鸟教程』实战篇:一文带你了解人脸识别应用原理及手把手教学实现自己的人脸识别项目
- NVIDIA驱动安装过程中的 'nvidia-drm' appears问题
- iPhone 计算机 桌面,2分钟学会Windows仿苹果任务栏,你的电脑桌面也可如此炫酷!...
- 项目管理方法适用于战略规划吗?
- windows系统的备份和还原
- 有没有可以测试充电宝电流电压的软件,USB测试仪 移动电源电流电压容量检测 充电宝充电器测试老化工具...
- ***【九度oj-1343】城际公路网