update time:2019-2-26 Author:要你命三千又三千 type:学习笔记
java web开发简介
建立两类web项目
如何建立基本的动态网页项目
建立企业级web项目
两者的区别
Enterprise application project 是针对企业级的,支持EJB
EJB简介
EJB是sun的JavaEE服务器端组件模型,设计目标与核心应用是部署分布式应用程序。简单来说就是把已经编写好的程序(即:类)打包放在服务器上执行。凭借java跨平台的优势,用EJB技术部署的分布式系统可以不限于特定的平台
编写的软件中那些需要执行制定的任务的类,不放到客户端软件上了,而是给他打成包放到一个服务器上了。(在浏览器/服务器模型使用方式)
JSF 是什么:JSF是一个框架标准,但不是具体实现(有JSF的标准实现)。其实JSF差不多就是Spring MVC的前身。JSF是一个基于组件的MVC架构的WEB框架.
举例对比:SSH框架(spring框架)与EJB框架对比
https://baike.baidu.com/item/Spring Framework/1693385
spring framework 的具体实现有常见的 SSH/SSM
二、来源的区别
- ssh的Spring来源于开源社区,是由广大开发者共同参与开发的。
- ejb来源于官方,一经通过,即成为了标准。
三、能力的区别
-
ssh是轻量级的,倡导零侵入性,并且不具备分布式能力。
-
ejb是重量级的,主要被用来做分布式开发。
四、框架的区别
- ssh是一个从前台到后台,从表现层到持久层的一套完整架构。是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。
- EJB是不包括前台的,EJB的特点是支持分布式部署,包括session bean, mdb, entity bean。用于实现业务逻辑,它可以是有状态的,也可以是无状态的。每当客户端请求时,容器就会选择一个SessionBean来为客户端服务。
spring框架简介
Spring是一个开源容器框架,可以接管web层,业务层,dao层,持久层的组件,并且可以配置各种bean,和维护bean与bean之间的关系。其核心就是控制反转(IOC),和面向切面(AOP),简单的说就是一个分层的轻量级开源框架。
IOC:(全称:Inverse Of Control )控制反转,容器主动将资源推送给它所管理的组件,组件所做的是选择一种合理的方式接受资源。
简单的理解:把创建对象和维护之间的关系的权利由程序中转移到Spring容器的配置文件中。
DI:(全称:Dependency Injection)依赖注入,IOC的另一种表现方式,组件以一种预先定义好的方式来接受容器注入的资源。
Spring的两大核心AOP与IOC,可以单独用于任何应用,包括与Struts等MVC框架与Hibernate等ORM框架的集成,目前很多公司所谓的轻量级开发就是用 Spring + Struts(2)+Hibernate。
问题:为什么要使用spring框架?
EJB开发JAVA EE应用的人,一定知道,在EJB开始的学习和应用非常的艰苦,很多东西都不能一下子就很容易的理解。EJB要严格地实现各种不同类型的接口,类似的或者重复的代码大量存在。而配置也是复杂和单调,同样使用JNDI进行对象查找的代码也是单调而枯燥。虽然有一些开发工作随着xdoclet的出现,而有所缓解,但是学习EJB的高昂代价,和极低的开发效率,极高的资源消耗,都造成了EJB的使用困难。而Spring出现的初衷就是为了解决类似的这些问题
关键目的:解决企业应用开发的复杂性
SSH和SSM定义
- SSH 通常指的是 Struts2 做控制器(controller),spring 管理各层的组件,hibernate 负责持久化层。
- SSM 则指的是 SpringMVC 做控制器(controller),Spring 管理各层的组件,MyBatis 负责持久化层。