对J2EE的概念和MVC架构的理解

原创 2004年10月31日 14:47:00
最近看了一些JSP相关的书,当中就免不了涉及些J2EE的内容,写点东西纪录一下。


J2EE是一个可以用来创建分布式的、基于组件的、多层的服务器应用程序设计环境和框架规范。它提供了应用的一个运行基础框架和创建应用的Java扩展API。

组成J2EE的扩展API及其含义:

JavaServer Pages (JSP)<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

主要用来产生动态网页内容,在传统网页中加入Java程序片段和JSP标签,构成JSP网页。它是在服务器端收到客户端发出的请求,执行程序片段,然后将执行结果以HTML格式响应给客户端。执行的程序片段可以是:操作数据库或重定向网页等。

 

Java Servlets

Servlet技术早于JSP技术,它好比一个微小的Web ServerServlet API是专门设计来帮助Java开发人员创建动态应用的,但其输出网页的操作过于复杂。

但是将JSPServlet很好的结合起来使用,形成了J2EE Web应用程序的表示层,而其它技术(例如:企业级JavaBean,即EJB)则构成逻辑和数据层。

 

Enterprise JavaBean (EJB)

EJBJ2EE中的一个重要组件,它是一个框架,可以被用来创建应用于应用程序服务器内部的服务器端组件。JavaBean开发人员使用EJB可以不用担心系统级的一些特性,例如安全问题,事物处理等,这是因为支持J2EE的应用程序服务器都必须提供这样的特性。所以JavaBean开发人员可以把精力集中在编写JavaBean上。

 

Java Naming and Directory Interface (JNDI)

 

JavaMail

 

Java Message Service (JMS)

 

Java Transaction API (JTA)

 

JavaIDL

 

JDBC

JDBC是使Java应用程序可以从关系数据库中获取数据,并向关系数据库中存放数据所提供的方法。利用JDBC API,就可以使用同一种语法访问不同的关系数据库。


其中有些作了解释,因为会用到,其他一些可能暂时还用不到。

因为一般开发这样的系统也就用到JSPServletJavaBean(包括EJB)JDBC。



另外还想说一说的就是MVC。

Java开发应用程序,通常可以分为Model1Model2两种设计模式。

因为JSP开发十分简单,因此以JSP为中心的设计模式被称为Model1。这种方式还可以分为两种(具体情况见后面的说明),一种是完全使用JSP来开发,另一种则是使用JSP+JavaBean的方式来开发。

       俗称的Model2就是采用MVC架构的开发模式。MVCModel-View-Controller的缩写。Model代表的是应用程序的业务逻辑(通过JavaBeanEJB等组件实现),View是系统的显示层(使用JSP输出HTML,Controller是提供应用程序的处理过程控制(通常是Servlet)。MVC并不是新的概念,80年代就开始使用这个概念来设计应用程序,网络的普及使得这种设计模式更加完善。


Model1

第一种:纯粹使用JSP开发系统

当一个用户发送请求到服务器端,就是由JSP来接收并处理,接着执行结果并响应到客户端。

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />

浏览器

Browser

客户端

(Client)

JSP

 请求

Request

 响应

Response

服务器端

(Server)

<?xml:namespace prefix = w ns = "urn:schemas-microsoft-com:office:word" />

此方式存在不少缺点,程序可读性很低,因为程序代码与网页标签混合在一起,增加了维护上的困难程度;程序的重复利用性能低,在不同的JSP文件中会找到很多相同的程序代码,当业务逻辑修改时,需要修改所有相关的JSP文件。

第二种:使用JSP+JavaBean开发系统

利用JavaBean封装一些可重用组件,当客户端发送一个请求时,通过JSP来调用JavaBean负责相关数据存取、逻辑运算等事务,最后将结果传回JSP显示结果。

此方式将程序代码用JavaBean实现,不但增加了可读性,也增加了重复利用的性能。但是这种方式缺乏流程控制,造成每一个JSP都要验证请求的参数正确度、确认用户的身份权限、异常发生的处理等。

Model2

俗称的Model2就是采用MVC架构的开发模式。

此方式使开发流程更为明确,增加了Controller控制流程,减少了JSP撰写过多逻辑的条件判断,并且整个系统也变得容易维护和扩展。

对MVC架构的理解

因为还不会MarkDown,就这样写了吧,以后有时间和心思再重构好了。 从开始学MVC架构开始,就没有弄清楚过其中每一个单词所代表的含义,这两天看了很多文章,反而有些迷糊了,不过还是把当下的结论记录...
  • lrm1293971805
  • lrm1293971805
  • 2017年04月12日 09:55
  • 452

对SDN概念的理解

本部分(一)主要是对SDN概念的理解,汇报时间2016-12-07目录 传统网络的一些问题 SDN概念的理解 传统网络的一些问题(也是SDN发展的动力和方向) 网络厂商杂,设备类型多,设备数量多,命令...
  • u013480581
  • u013480581
  • 2016年12月07日 23:20
  • 619

J2EE的概念以及容器概念总结

J2EE的概念以及容器概念总结
  • nocol123
  • nocol123
  • 2017年06月13日 00:13
  • 688

【Java架构学习】MVC和三层架构的区别

其实这篇博客的重点不是介绍三层架构,是重点介绍MVC并帮助理解MVC。学了这么久MVC发现对它的理解还存在很多误区,今天就来好好整理一下MVC。     MVC即Model-View-Controll...
  • huanjileaimeidan
  • huanjileaimeidan
  • 2014年09月10日 14:41
  • 2289

ERP 概念理解----

     ERP是英文enterprise resources planning(企业资源计划)的首字母简写。         是指建立在信息技术基础上,以系统化的管理思想,为企业决策层和员工提供决策...
  • gnolhh168
  • gnolhh168
  • 2009年11月25日 21:36
  • 845

谈谈你对MVC的理解

MVC是Model—View—Controler的简称。即模型—视图—控制器。MVC是一种设计模式,它强制性的把应用程序的输入、处理和输出分开。      MVC中的模型、视图、控制器它们分别担负着...
  • miachen520
  • miachen520
  • 2016年08月28日 17:06
  • 1996

个人对"原型"和"原型链"的理解

Javascript语言可能太过灵活,导致一些学C#学Java等姑且说叫"正统的面向对象的语言"的人觉得Javascript面向对象的部分凌乱不堪,上网看别人对原型和原型链的理解都是各抒己见,各有各的...
  • cuiyh1993
  • cuiyh1993
  • 2015年07月22日 23:07
  • 1965

对 MVC架构的理解

在开发图形界面应用程序的时候,为求更好的管理应用程序的复杂性,基于职责分离的思想会对应用程序进行分层,把管理用户界面的层次称为View,管理应用程序数据的层次称为Model。有了View和Model的...
  • hyhdcl
  • hyhdcl
  • 2016年10月15日 12:52
  • 173

J2EE基础概念

J2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。J2EE核心是一组技术规范与指南,其中所包含的各类组件、服务架构及...
  • u013036278
  • u013036278
  • 2016年01月10日 22:48
  • 904

对集合框架的理解

1、集合框架的概念 由于程序语言在使用中可能会对多个数据进行存储,所以需要用一种东西来放置以便统一使用或者提取,于是诞生了集合框架这种容器。它能够给用户提供元素的增加,删减,替换和查找的功能,让操作...
  • xcycool24
  • xcycool24
  • 2016年10月24日 22:55
  • 242
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:对J2EE的概念和MVC架构的理解
举报原因:
原因补充:

(最多只允许输入30个字)