OSGi与数据库事务:提升系统可靠性与稳定性 (osgi 数据库事务)

随着互联网技术的飞速发展,各种大规模的企业级应用系统不断出现,系统可靠性和稳定性也越来越受到重视。在开发企业级应用系统时,数据库作为系统的存储核心,必须保证事务的可靠性和稳定性,否则将给系统带来巨大的风险和损失。而OSGi作为一种开放式的、动态的、可扩展的服务平台,可以帮助我们提升系统的可靠性和稳定性。

一、OSGi框架简介

OSGi,全称Open Service Gateway initiative,是一个专门用于构建模块化、灵活、动态的Java应用平台的标准化框架。它的基本思想是将一个大型应用系统分解为许多小的独立模块,每个模块都可以独立升级、卸载和部署。这种模块化的设计可以使得系统更易于开发、测试和维护,并支持系统的动态扩展和功能升级。OSGi中的所有组件都是基于“bundle”进行构建和管理的,这些bundle可以按照需要动态添加、修改、升级和删除。

二、数据库事务的概念

在计算机领域中,事务是指一个组成单元的逻辑工作单元,由一系列的数据库操作组成,这些操作要么全部执行成功,要么全部不执行。例如,银行系统中的转账操作就可以看作一个事务,要么同时成功,要么同时失败。事务的出现主要是为了保证数据库的一致性和完整性,当操作失败时,数据回滚到之前的状态,确保数据不被损坏。

三、OSGi与数据库事务

在使用OSGi框架开发系统时,可以将系统按照功能划分成若干个独立的bundle,每个bundle可以独立地运行和管理。在使用数据库时,也可以将数据库操作封装在一个独立的bundle中。这样,每个bundle都可以有独立的事务操作,可以避免依赖其他组件出现的事务问题对整个系统的影响。

OSGi和数据库事务的结合可以带来以下好处:

1. 系统更加健壮和可靠:当某个bundle发生异常时,只会影响到该bundle内的事务,不会影响到整个系统的运行。

2. 高效的系统升级和维护:当需要升级某个bundle时,只需关闭该bundle即可,不会影响其他组件的运行,简单高效。

3. 更灵活的系统设计:不同的业务逻辑可以分别封装到不同的bundle中,可以按照需要随时添加或删除模块,支持系统的动态扩展。

4. 便于调试和测试:由于每个bundle都可以独立运行和测试,可以更方便地进行单元测试和集成测试,同时也更容易定位问题和解决Bug。

四、结论

综上所述,OSGi与数据库事务的结合可以帮助我们建立高度可靠和稳定的企业级应用系统,它可以提高系统的可靠性和稳定性,并支持系统的动态扩展和功能升级。同时,在系统的开发和维护过程中,我们需要注意将业务逻辑封装到不同的bundle中,避免过多的依赖导致事务异常。这样,我们才能充分利用OSGi框架的优势,让我们的系统更加高效、稳定和健壮。

相关问题拓展阅读:

java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver at org.eclipse.osgi

把jdbc复制到大的程程中去.

java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver

找不到数据库存的启动程序

估计笑档是你的驱动包没有导进则含去碰盯乱

没有加载到连接sqlserver所需要jar包,你检查下

缺少JAR包,找不到驱动类包。

你的驱动包没有导进去

Java开源框架是什么?

应用比较多的是下面这些:

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框架。.

Expresso Framework

Expresso Framework开发于1989年,属于比较早开发的一款软件,是一个基于开放标准的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框架微容器中,从而逐步形成自己的行业专业开发框架。

realMethods

realMethods是基于J2EE设计模式核心的应用框架,支持BMP,CMR/CMP 2.0,安全,日志,连接池,Web服务等更多技术。

Bright Side Framework

Bright Side Framework 它同时提供两种类型的客户端来访问J2EE 应用。一.是基于HTTP 协议的Java/Swing client ,二.是一个Struts client。它同时提供了一个咨询论坛和在线 demo 应用 BookStore。

OpenXava

OpenXava是一个让使用XML与Java来开发J2EE商业应用程序变得简单的框架.它目前支持IBM WebSphere应用服务器,但在开发过程中可以使用JBoss.OpenXava1.1版本支持以下特点:

*. 支持WebSphere 5.0, 5.1和6.0, JBoss 3.2.x和4.0.x包括native EJB CMP2 EntityBeans

*. 它已经被用在许多商业项目上

*. 易用,使用它可以获得高的开发效率

*. 灵活:可以在任意位置插入自己的功能.

*. 基于商业化组件的概念

*. 完全地MVC

*. 使用有着成熟商业应用程序丰富特性的Web用户接口

*. 可生成整个J2EE应用程序

*. 它应用到的开源项目有:Ant, JUnit,JasperReports,TL,XDocLet,Hibernate等

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等项目!这有一篇英文的简介文章Keel Framework.

JBoss Seam

JBoss Seam是一个Java EE5框架。它通过把F与EJB3.0组件合并在一起,从而为开发基于Web的企业应用程序提供一个最新的模式。Seam可以让你把EJB组件直接绑定到F页面。Seam能够统一和集成现有的开源技术集成如Facelets、Hibernate、jBPM、Drools、Groovy、Java Portlets、BPM、AJAX、iText和Lucene。

CUBA

CUBA: Component Unification Base是一个非常小而且易于使用的开发框架用于设计基于组件(真正可复用、高效的服务端组件)的J2EE应用程序。利用此框架开发的应用程序可以作为EJB2.1或EJB3.0应用运行,或AXIS web service或stand-alone J2SE程序。 CUBA提供一个面向EJB3的组件模型、一个描述符(descriptor)和代码生成器来为多种运行环境生成不同的适配器。

Jt

Jt是一个轻量级的,面向设计模式的J2EE框架。Jt已经被运用到一些大型的关键业务系统(mission critical system)。Jt实现了许多著名设计模式包括DAO(Data Access Object),GoF中的设计模式和J2EE模式。该框架支持的一些J2EE技术包括Struts、Hibernate、AJAX、JDBC、EJBs、JMS、XML和Web Services。

Nuxeo5

Nuxeo5是一个用于ECM(Enterprise Content Management)应用程序开发的开源框架。基于组件和面向服务的架构使得它真正易于定制和扩展。Nuxeo5构建流行的Java5与Java EE5技术包括:Apache Jackrabbit ,JBoss应用服务器,JBoss Seam,jBPM,JBoss Rules,F,EJB3等,并运用OSGi与Nuxeo Core。

Beetle

Beetle J2ee Application Framework(BJAF)一个功能强大而简单易用的J2EE应用开发框架。它涵盖了J2EE体系结构的表示层、业务层和持久层,为构建一个可靠、高性能、可扩展、灵活缩放的高质量企业应用系统提供了一套理想的解决方案。

Nutz

Nutz 是一组轻巧的开源框架,内容涵盖了

数据持久化Nutz.Dao

反转控制Nutz.Ioc

Web框架Nutz.Mvc

Json 解析器Nutz.Json

以上部分可以独立使用,比如你可以

在Spring或者Guice中使用Nutz.Dao

在Nutz.Ioc中使用使用Hibernate/iBatis

在任何Java程序用使用Nutz.Json

bbossgroups

bbossgroups是国内首款集aop,mvc,persistent,jsp taglib,分布式rpc服务,分布式事件框架于一身的企业级j2ee开发框架。

JFinal – 基于Java的极速 WEB + ORM 开发框架

JFinal 是基于Java 语言的极速 WEB + ORM 开发框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有ruby、python等动态语言的开发效率!为您节约更多时间,去陪恋人、家人和朋友 😉

JFinal主要特点:

MVC架构,设计精巧,使用简单

遵循COC原则,零配置,无xml

ActiveRecord支持,使数据库开发极致快速

自动加载修改后的java文件,开发过程中无需重启web server

AOP支持,拦截器配置灵活,功能强大

Plugin体系结构,扩展性强

多视图支持,支持FreeMarker、P、Velocity

强大的Validator后端校验功能

功能齐全,拥有struts2的绝大部分功能

体积小仅180K,且无第三方依赖

更多JFinal – 基于Java的极速 WEB + ORM 开发框架信息

Java开源项目

Spring Framework 【Java开源 J2EE框架】

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平台下一个辅助开发插件】.

WebWork 【Java开源 Web框架】

WebWork 是由OpenSymphony组织开发的,致力于组件化和代码重用的拉出式MVC模式J2EE Web框架。WebWork目前最新版本是2.1,现在的WebWork2.x前身是Rickard Oberg开发的WebWork,但现在WebWork已经被拆分成了Xwork1和WebWork2两个项目。 Xwork简洁、灵活功能强大,它是一个标准的Command模式实现,并且完全从web层脱离出来。 Xwork提供了很多核心功能:前端拦截机(interceptor),运行时表单属性验证,类型转换,强大的表达式语言(OGNL – the Object Graph Notation Language),IoC(Inversion of Control倒置控制)容器等。 WebWork2建立在Xwork之上,处理HTTP的响应和请求。WebWork2使用ServletDispatcher将HTTP请求的变成 Action(业务层Action类), session(会话)application(应用程序)范围的映射,request请求参数映射。WebWork2支持多视图表示,视图部分可以使用 P, Velocity, FreeMarker, JasperReports,XML等。在WebWork2.2中添加了对AJAX的支持,这支持是构建在DWR与Dojo这两个框架的基础之上.【EclipseWork:用于WebWork辅助开发的一个Eclipse插件】

Struts 【Java开源 Web框架】

Struts 是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和P技术来实现的。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注。Struts把Servlet、P、自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。【StrutsIDE:用于Struts辅助开发的一个Eclipse插件】

Hibernate 【Java开源 持久层框架】

Hibernate 是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/P的Web应用中使用,更具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。Eclipse平台下的Hibernate辅助开发工具:【Hibernate Synchronizer】【MiddlegenIDE】

Quartz 【Java开源 Job调度】

Quartz 是OpenSymphony开源组织在Job scheng领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的日程序表。Jobs可以做成标准的Java组件或 EJBs。Quartz的最新版本为Quartz 1.5.0。

Velocity 【Java开源 模板引擎】

Velocity 是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象。当Velocity应用于web开发时,界面设计人员可以和java程序开发人员同步开发一个遵循MVC架构的web站点,也就是说,页面设计人员可以只关注页面的显示效果,而由java程序开发人员关注业务逻辑编码。Velocity将java代码从web页面中分离出来,这样为web站点的长期维护提供了便利,同时也为我们在P和PHP之外又提供了一种可选的方案。 Velocity的能力远不止web站点开发这个领域,例如,它可以从模板(template)产生SQL和PostScript、XML,它也可以被当作一个独立工具来产生源代码和报告,或者作为其他系统的集成组件使用。Velocity也可以为Turbine web开发架构提供模板服务(template service)。Velocity+Turbine提供一个模板服务的方式允许一个web应用以一个真正的MVC模型进行开发。 【VeloEclipse :Velocity在Eclipse平台下的一个辅助开发插件】

IBATIS 【Java开源 持久层框架】

使用ibatis 提供的ORM机制,对业务逻辑实现人员而言,面对的是纯粹的Java对象, 这一层与通过Hibernate 实现ORM 而言基本一致,而对于具体的数据操作,Hibernate 会自动生成SQL 语句,而ibatis 则要求开发者编写具体的SQL 语句。相对Hibernate等 “全自动”ORM机制而言,ibatis 以SQL开发的工作量和数据库移植性上的让步,为系统设计提供了更大的自由空间。作为“全自动”ORM 实现的一种有益补充,ibatis 的出现显 得别具意义。

Compiere ERP&CRM 【Java开源ERP与CRM系统】

Compiere ERP&CRM为全球范围内的中小型企业提供综合型解决方案,覆盖从客户管理、供应链到财务管理的全部领域,支持多组织、多币种、多会计模式、多成本计算、多语种、多税制等国际化特性。易于安装、易于实施、易于使用。只需要短短几个小时,您就可以使用申购-采购-发票-付款、报价-订单-发票-收款、产品与定价、资产管理、客户关系、供应商关系、员工关系、经营业绩分析等强大功能了。

Roller Weblogger 【Java开源 Blog博客】

这个weblogging 设计得比较精巧,源代码是很好的学习资料。它支持weblogging应有的特性如:评论功能,所见即所得HTML编辑,TrackBack,提供页面模板,RSS syndication,blogroll管理和提供一个XML-RPC 接口。

Eclipse 【Java开源 开发工具】

Eclipse平台是IBM向开放源码社区捐赠的开发框架,它之所以出名并不是因为IBM宣称投入开发的资金总数 —4千万美元,而是因为如此巨大的投入所带来的成果:一个成熟的、精心设计的以及可扩展的体系结构。

NetBeans 【Java开源 开发工具】

NetBeans IDE 是一个为软件开发者提供的自由、开源的集成开发环境。您可以从中获得您所需要的所有工具,用 Java、C/C++ 甚至是 Ruby 来创建专业的桌面应用程序、企业应用程序、web 和移动应用程序。此 IDE 可以在多种平台上运行,包括 Windows、Linux、Mac OS X 以及 Solaris;它易于安装且非常方便使用。

XPlanner 【Java开源 项目管理】

XPlanner 一个基于Web的XP团队计划和跟踪工具。XP独特的开发概念如iteration、user stories等,XPlanner都提供了相对应的的管理工具,XPlanner支持XP开发流程,并解决利用XP思想来开发项目所碰到的问题。 XPlanner特点包括:简单的模型规划,虚拟笔记卡(Virtual note cards),iterations、user stories与工作记录的追踪,未完成stories将自动迭代,工作时间追踪,生成团队效率,个人工时报表,SOAP界面支持。

HSQLDB 【Java开源 DBMS数据库】

HSQLDB(Hypersonic SQL)是纯Java开发的关系型数据库,并提供JDBC驱动存取数据。支持ANSI-92 标准 SQL语法。而且他占的空间很小。大约只有160K,拥有快速的数据库引擎。

Liferay 【Java开源 Portal门户】

代表了完整的J2EE应用,使用了Web、EJB以及JMS等技术,特别是其前台界面部分使用Struts 框架技术,基于XML的portlet配置文件可以自由地动态扩展,使用了Web Services来支持一些远程信息的获取,使用 Apahce Lucene实现全文检索功能。

JetSpeed 【Java开源 Portal门户】

Jetspeed 是一个开放源代码的企业信息门户(EIP)的实现,使用的技术是Java和XML。用户可以使用浏览器,支持WAP协议的手机或者其它的设备访问Jetspeed架设的信息门户获取信息。Jetspeed扮演着信息集中器的角色,它能够把信息集中起来并且很容易地提供给用户。

JOnAS 【Java开源 J2EE服务器】

JOnAS 是一个开放源代码的J2EE实现,在ObjectWeb协会中开发。整合了Tomcat或Jetty成为它的Web容器,以确保符合Servlet 2.3和P 1.2规范。JOnAS服务器依赖或实现以下的Java API:JCA、JDBC、JTA 、JMS、JMX、JNDI、JAAS、JavaMail 。

JFox3.0 【Java开源 J2EE服务器】

JFox 是 Open Source Java EE Application Server,致力于提供轻量级的Java EE应用服务器,从3.0开始,JFox提供了一个支持模块化的MVC框架,以简化EJB以及Web应用的开发! 如果您正在寻找一个简单、轻量、高效、完善的Java EE开发平台,那么JFox正是您需要的。

Spring Framework 【Java开源 J2EE框架】

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平台下一个辅助开发插件】.

WebWork 【Java开源 Web框架】

WebWork 是由OpenSymphony组织开发的,致力于组件化和代码重用的拉出式MVC模式J2EE Web框架。WebWork目前最新版本是2.1,现在的WebWork2.x前身是Rickard Oberg开发的WebWork,但现在WebWork已经被拆分成了Xwork1和WebWork2两个项目。 Xwork简洁、灵活功能强大,它是一个标准的Command模式实现,并且完全从web层脱离出来。 Xwork提供了很多核心功能:前端拦截机(interceptor),运行时表单属性验证,类型转换,强大的表达式语言(OGNL – the Object Graph Notation Language),IoC(Inversion of Control倒置控制)容器等。 WebWork2建立在Xwork之上,处理HTTP的响应和请求。WebWork2使用ServletDispatcher将HTTP请求的变成 Action(业务层Action类), session(会话)application(应用程序)范围的映射,request请求参数映射。WebWork2支持多视图表示,视图部分可以使用 P, Velocity, FreeMarker, JasperReports,XML等。在WebWork2.2中添加了对AJAX的支持,这支持是构建在DWR与Dojo这两个框架的基础之上.【EclipseWork:用于WebWork辅助开发的一个Eclipse插件】

Struts 【Java开源 Web框架】

Struts 是一个基于Sun J2EE平台的MVC框架,主要冲拆是采用Servlet和P技术来实现的。由于Struts能充分满宴裤足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注。Struts把Servlet、P、自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。【StrutsIDE:用于Struts辅助开发的一个Eclipse插件】

Hibernate 【Java开源 持久层框架】

Hibernate 是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/P的Web应用中使用,更具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。Eclipse平台下的Hibernate辅助开发工具:【Hibernate Synchronizer】【MiddlegenIDE】

其实框架很简单的,你可以认为它是一个工具,甚至一个插件。

框架念搭的作用,就是将一个公用的,常用的技术,封装起来,

帮你处理一些基础的东西,可以让你不用再去写那些胡告繁琐的东西。

就拿你要学的struts来说:他本质上也是用java写的,和我们自己写的类没有区别,他实现的东西我们自己也可以实现。

比如接收客户端的数据,我们是用request.getParameter()来的,但是如果有很多个参数,我们要写很多个,很麻烦。struts它就帮我们实现,不用我们写,仔做拿直接写个属性,就可以得到。其实本质还是用request.getParameter()。。

所以你不要再在意框架是什么东西,等你接触了就知道了。你把它当做一个工具来用,这就是框架。

前台框架:jQuery

Mvc框架:Struts、spring Mvc

核心框架:Spring

orm框架:Hibernate、Spring JDBC、myBatis。

楼上回答得很好了。至于这些框架的学习问题,不是很难。

关于osgi 数据库事务的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » OSGi与数据库事务:提升系统可靠性与稳定性 (osgi 数据库事务)