Java开源——常见J2EE框架简介
Spring Framework
Spring是一个解决了许多在J2EE开发中常见的问题的强大框架。 Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的Inversion of Control容器。然而,这仅仅是完整图景中的一部分:Spring在使用IoC容器作为构建完关注所有架构层的完整解决方案方面是独一无二的。 Spring提供了唯一的数据访问抽象,包括简单和有效率的JDBC框架,极大的改进了效率并且减少了可能的错误。Spring的数据访问架构还集成了Hibernate和其他O/R mapping解决方案。Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC事务提供一个一致的编程模型。Spring提供了一个用标准Java语言编写的AOP框架,它给POJOs提供了声明式的事务管理和其他企业事务——如果你需要——还能实现你自己的aspects.这个框架足够强大,使得应用程序能够抛开EJB的复杂性,同时享受着和传统EJB相关的关键服务。Spring还提供了可以和IoC容器集成的强大而灵活的MVC Web框架。「SpringIDE:Eclipse平台下一个辅助开发插件」。
Expresso Framework
Expresso Framework是一个基于开放标准的J2EE体系框架,可以让开发者专注于应用程序逻辑。它是一个可扩展Java Server应用程序框架组件库,用于创建基于开放标准的数据库驱动的Web应用程序。Expresso和Apache Jakarta Struts集成在一起,后者强调表达和应用的配置并为Expresso提供了一个功能强大的标签库。
Dinamica Framework
这个框架是基于MVC设计模式。但其它一些MVC框架相比较,它的各部分体现出了高度的重用性,这样将消除你不必要多余的设计。各任务的调度使用简单的XML配置文件与模板使它们之间的逻辑完全分开。Dinamica没有使用任何模板语言与jsp技术,而是使用特殊的标记来代替真正的数据。
EJOSA
EJOSA,企业级开源架构,利用Enhydra和JOnAS 为开发者提供一个易用的开发架构。实际上使用 EJOSA 就是使用Enhydra和JOnAS ,因为他们都是EJOSA的主要组件。EJOSA 作用是把一些组件都预先配置,并提供一个简单明了的目录结构,目的是减轻开发的难度,让开发者把重点放在业务处理上。
Jeenius Framework
利用Jeenius框架可以很容易开发J2EE应用程序。Jeenius主要关注的构建是基于Web的应用程序。
jGuard
jGuard这个项目是用Java开发的,提供一个基于jaas (java authentication and authorization security)的安全框架。这个框架可以用于Web应用程序,可以解决简单的访问控制问题。
JdonFramework
Jdon Framework(简称JF)是一套适合开发中小型J2EE应用系统的快速开发框架、也是一套Ioc/Aop框架、更是一套符合当前国际水平的、面向组件开发的、国人拥有自主产权的中间件产品。中国第一个开源框架,国内先进的组件、构件工具。
Jdon框架是快速性和灵活性相结合的产物,体现了软件开发既快又好的特点,对于小项目,使用Jdon框架可以开发出高质量可扩展的好的系统;对于大项目,使用Jdon框架可以更快地开发出系统。
从技术原理上讲,Jdon框架创新地综合了域驱动开发框架(快)和Ioc/AOP构件管理(好)两种新技术。增删改查和批量分页查询是每个系统的基础功能,Jdon框架提供了这两个基础功能快速开发和可靠性能保证,Jdon Framework = Ioc + AOP + CRUD + Cache
Jdon框架给你的J2EE应用系统带来完整的高质量解决方案:
High-Availability(高可用性):在J2EE多层分离完全解耦的前提下,提供了数据增删改查(crud)快速开发方式,程序员需要编写的crud代码很少,表现层crud功能实现通常只需要配置就可以实现,No Code,例程。
Scalability(可伸缩性):使用本框架,可以开发出两种系统:真正轻量的Web应用系统或Web+EJB应用系统;无缝同时支持两种服务架构:EJB Session Bean和POJO Service(Web应用),在不改变代码的情况下,可以很方便地将一个Web系统升级到Web+EJB系统,Jdon帮助你实现应用系统的可伸缩性。
Performance(良好的性能):Jdon框架内置Web缓存优化功能提高了大批量数据查询速度。使用JdonFramework开发J2EE应用系统,几乎无需考虑性能设计,也无需担心内存泄漏或并发访问,对Model数据通过缓存拦截器提升性能;对POJO无态服务使用对象池拦截器;也实现了POJO的有态服务拦截器。
Transparency(透明性):Jdon Framework的组件管理使用Ioc容器实现,所有组件包括框架组件和应用组件都是可配置,甚至可替换的。它的Ioc/AOP实现简单而强大。Ioc模式采用微容器PicoContainer实现,AOP功能是可分解的,通过缓存优化了动态代理的运行性能,Jdon框架AOP可支持所有遵循继承Aopalliance(如Spring)的拦截器。
Extendable(扩展性):它是可伸缩的、动态配置的,应用者可以将自己系统中的通用功能从具体系统中抽象出来,加入Jdon框架微容器中,从而逐步形成自己的行业专业开发框架。
OpenXava
OpenXava是一个让使用XML与Java来开发J2EE商业应用程序变得简单的框架。它目前支持IBM WebSphere应用服务器,但在开发过程中可以使用JBoss.OpenXava1.1版本支持以下特点:
1、支持WebSphere 5.0, 5.1和6.0, JBoss 3.2.x和4.0.x包括native EJB CMP2 EntityBeans
2、它已经被用在许多商业项目上
3、易用,使用它可以获得高的开发效率
4、灵活:可以在任意位置插入自己的功能。
5、基于商业化组件的概念
6、完全地MVC
7、使用有着成熟商业应用程序丰富特性的Web用户接口
8、可生成整个J2EE应用程序
9、它应用到的开源项目有:Ant, JUnit,JasperReports,TL,XDocLet,Hibernate等
realMethods
realMethods是基于J2EE设计模式核心的应用框架,支持BMP,CMR/CMP 2.0,安全,日志,连接池,Web服务等更多技术。
Bright Side Framework
Bright Side Framework 它同时提供两种类型的客户端来访问J2EE 应用。一。是基于HTTP 协议的Java/Swing client ,二。是一个Struts client.它同时提供了一个咨询论坛和在线 demo 应用 BookStore.
Karma
karma是一个轻量级并且易于使用的J2EE应用程序框架。当前它包含"COMMON" 与"JCR"这两个组件。
"COMMON"组件是整个框架的核心并且基于mvc模式。这个组件易于测试(提供mock对象供测试),很少的XML描述,易于学习因为它使用简单的POJO动作(actions),拦截器(interceptors)和过滤器(filters) 还提供对AJAX的支持。
"JCR"组件是一个持久层框架但它没有XML映射文件并能与其它web框架相结合如:Spring MVC框架。
Keel Framework
Keel Framework是一个把专注于应用程序开发某方面(如:用户接口,数据库,消息,安全等等)的开源或商业的框架以插件的方式整合在一起的元框架。Keel围绕三种核心模式进行构建:
1、COP模式(Component Oriented Programming:面向组件编程)这就为应用程序提供了一个灵活的插件(plugging/unplugging)框架。
2、SOC模式(Separation of Concerns:关注分离)这允许用户执行/控制/修改任何组件的功能而不会影响到其它组件。
3、IOC模式(Inversion of Control:反转控制)。
Keel Framework当前已经集合了Avalon,Cocoon,Struts,Hibernate,Velocity,WebWork2,Axis, Maverick,JBoss,OpenJMS,Turbine,Lucene,BSF,Jelly,JFreeChart,Quartz等项目!
Seam
Seam是一个Java EE 5框架。它通过把JSF与EJB3.0组件合并在一起,从而为开发基于Web的企业应用程序提供一个最新的模式。Seam可以让你把EJB组件直接绑定到JSF页面。Seam还可帮助你把jBPM流程定义直接地集成到你的应用程序中。
CUBA
CUBA: Component Unification Base是一个非常小而且易于使用的开发框架用于设计基于组件(真正可复用、高效的服务端组件)的J2EE应用程序。利用此框架开发的应用程序可以作为EJB2.1或EJB3.0应用运行,或AXIS web service或stand-alone J2SE程序。 CUBA提供一个面向EJB3的组件模型、一个描述符(descriptor)和代码生成器来为多种运行环境生成不同的适配器。
来源:疯狂软件http://www.fkjava.org