就现在WEB开发而言,J2EE企业级开发技术比较成熟,开发模式模式也比较繁多,较流行开发模式MVC更是普遍,而基于MVC模式开发的框架也是种类繁多,现在使用最多的可能就是SSH这三种框架,所以展开对这三个框架的糅合使用和浅显的研究探讨。还有由于过去常用的是TomCat的部署和使用,下来学习WebLogic的部署,比较其相同点和不同点。
研究内容: 主要是研究讨论SSH这三种开源框架的糅合使用到底是怎样实现方法和策略,及各自的优缺点,对以后Domino技术和J2EE技术结合奠定基础及WebLogic的部署和TomCat的比较。
需要注意:
第一:环境的配置,因为SSH使用到的是三种基于java语言实现的开源框架,所以基本要先把JRE配置好即安装JDK(6.0).
第二:配置好Struts ,Spring ,Hibernate这三个开源框架的开发环境配置。鉴于简单起见可以使用MyEclipse6.0 的IDE这样三种开源框架的配置文件IDE已经集成好,直接添加就可以是要用。
第三:开发使用的部署工具是Tomcat,可以尝试使用WebLogic,然后对其比较。
成果方式:
一:Struts的基础介绍。
Struts是目前WEB开发中比较流行的一种开源框架,它主要是采用Servlet和JSP技术实现Model2(Servlet+JSP+JavaBean)类型MVC的设计模式,即是实现模型-视图-控制三部分模块的分离。
2:Struts与MVC的比较
| Struts | MVC |
M | JavaBean(业务数据), Service Class(业务逻辑) | M模型 |
V | JSP(动态网页) ActionForm(表单数据操作) | V视图 |
C | ActionServlet(接受页面请求), Action(处理请求;控制流程), struts-config.xml(配置参数) | C控制部分 |
3:Struts的基本工作流程
(1):WEB启动,初始化ActionServlet,读取struts-config.xml的配置信息,作准备。
(2):用户发出一个请求,ActionServlet接受,根据ActionMapping查找相应的Action。
(3):Action调用JavaBean,并且结合ActionForm,处理数据。
(4):处理完成后,返回ActionForward,指定转向的地方。
二:Spring基础介绍
1: 介绍Spring
Spring框架也是一个开源框架,它的核心概念是依赖注入(Dependency Injection),通过依赖注入机制,可以再运行期间将组件之间的依赖关系由Spring容器注入组件,同时spring框架还提供AOP开发以及事务管理的组件,以及对WEB层和持久层的支持,从而可以很好配合Struts和Hibernate框架。
2:Spring框架的组建构成
A: Core模块。该模块是其他模块的功能基础,在这个模块中存在BeanFactory类,它是Spring框架的核心,它实现依赖注入,是系统中的各组件的一俩关系从代码中独立出来,通过配置文件来实现;BeanFactory也是Spring框架的核心容器,因为他管理容器中对象的生命周期。
B: Context模块。这个模块是通过配置文件将各个组件组合在一起,使spring成为框架。其中ApplicationContext类扩展继承BeanFactory的功能,因此它也可以成为Spring容器。此外该模块还提供其他的服务。
C: DAO模块。这个模块把JDBC代码中的一些内容抽象出来,简化JDBC编码。
D: ORM模块。这个模块提供对ORM框架的支持,从而可以扩展Spring框架支持ORM框架。
E: AOP模块。这个模块提供AOP(面向切面编程)的功能,通过这个模块可以将通用功能插入到业务逻辑中。
F:WEB模块。此模块提供WEB应用所需要的上下文,可以与Struts等框架相结合。
G:WEBmvc模块,它提供面向WEB应用的MVC模式,模块利用依赖注入将控制部分和业务逻辑清晰分离。
3:理解依赖注入和方式
组件之间的依赖关系通过配置文件来定义,或者说通过注入来实现的。
A:配置WebApplicationContext
a:利用Servlet接口来实现
具体代码:
<servlet-class>org.springframework.web.context.ContextLoaderServlet
</servlet-class>
b:利用Listeners接口来实现
具体代码:
<listener>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listerer>
(2):Struts中实现Spring的插件集成
<plug-in
value="/WEB-INF/applicationContext.xml" />
B:Spring的Bean
Bean的定义:
2:Bean属性的配置
3:依赖注入的两种方式
C:实例化Bean
BeanFactory接口有多实现,其中常用的是org.springframework.beans.factory.XmlBeanFactory.
可以通过两种方式:
1:编码的方式——就是配置WebApplicationContext是讲到的。
2:硬编码的方式。
ApplicationContext context = new FileSystemXmlApplication
ApplicationContext实例化bean的使用方法 :
ApplicationContext context= new FileSystemXmlApplication
sampleSpringBean sample=( sampleSpringBean) context.getBean(“sampleSpringBean”);
三:Struts和Spring的集成