写这篇文章之前,参考了好多别人的文章,还有我的一些想法,与大家共勉。
(1)官方定义:JavaEE 是一个开发分布式企业级应用的规范和标准。
(2)原名J2EE,JavaEE应该是J2EE的延伸。
(3)J2EE是一个标准,这个标准不仅定义了基本的规范和接口,也有一些比较固定的架构模型。
(4)J2EE使用多层的分布式应用模型,应用逻辑按功能划分为组件,各个应用组件根据他们所在的层分布在不同的机器上。
HTML
JavaScript
Ajax:主要功能是异步的向服务器发送请求
Jsp:显示动态内容的服务器网页。
servelet:接受客户端请求,并作出响应的Java程序。servelet是中间层技术的重要组成部分,控制着其他组件。
JavaBean:JavaEE的模型组件。
Struts2:扩展了servlet。
JDBC:(Java DataBase Connectivity)连接并且操作数据库。
hibernate:数据层框架技术,提供了以对象的形式来操作关系型数据库的功能。
WebService ,Struts,hibernate,spring,Jsp,Servler,JJSF,EJB,JDBC,JNDI,XML,JavaSE
表现层(UI):展现给用户的界面。
业务逻辑层(BLL):对数据层的操作,对数据业务逻辑处理。
数据访问层(DAL):操作数据库,针对数据的增添、删除、修改、更新、查找等。
1.提供程序的可扩展性,一般需要将表示与业务逻辑分离,业务逻辑和数据处理分离。
2.为了“高内聚,低耦合“的思想。
注意:(内聚:一个模块内各个元素彼此结合的紧密程度;耦合:一个软件结构内不同模块之间互连程度的度量)。
1、开发人员可以只关注整个结构中的其中某一层;
2、可以很容易的用新的实现来替换原有层次的实现;
3、可以降低层与层之间的依赖;
4、有利于标准化;
5、利于各层逻辑的复用。6、扩展性强。不同层负责不同的层面,如PetShop可经过简单的配置实现Sqlserver和oracle之间的转换,当然写好了也可以实现B/S与C/S之间的转换。
7、安全性高。用户端只能通过逻辑层来访问数据层,减少了入口点,把很多危险的系统功能都屏蔽了。
8、项目结构更清楚,分工更明确,有利于后期的维护和升级
1、降低了系统的性能。这是不言而喻的。如果不采用分层式结构,很多业务可以直接造访数据库,以此获取相应的数据,如今却必须通过中间层来完成。
2、有时会导致级联的修改。这种修改尤其体现在自上而下的方向。如果在表示层中需要增加一个功能,为保证其设计符合分层式结构,可能需要在相应的业务逻辑层和数据访问层中都增加相应的代码。
3、增加了代码量,增加了工作量。
经验:
小项目,以后变动不大的不用三层结构。
三层结构的最大优点是它的安全性。
MVC是模型(model)、视图(view)、控制(controller)这三个单词上的首字母组成。
为了进一步提高程序的可扩展性,复用性,真正实现表现层和业务逻辑层分离——控制器是为了实现上述而存在的。
模型层(model)实现系统中的业务逻辑,通常JavaBean实现。
视图层(view)用于与用户交互,通常JSP实现。
控制层(controller)是模型层和视图层沟通的桥梁。
MVC最典型的模式就是:Jsp+servelet+JavaBean模式。
MVC的处理过程:对于每一个用户输入的请求,首先被控制器接收,控制器决定用哪个模型来进行处理,然后模型通过业务逻辑层处理用户的请求并返回数据,最后控制器确定用哪个视图模型,用相应的视图格式化模型返回数据,并通过显示页面呈现给用户。
低耦合性(视图层和业务层分离);
高重用性和可适用性(允许不同式样的视图访问同一个服务器端的代码,比如web的HTTP浏览器和无线浏览器WAP);
较低的生命周期成本(开发和维护用户接口的技术含量降低);
部署快速(不同部件的开发人员专注于自己那个模块);
可维护性(分离视图层和业务逻辑层使Web应用更易于维护和修改);
有利于软件工程化管理(由于采用分层的思想);
联系客服