??xml version="1.0" encoding="utf-8" standalone="yes"?>
(q里不说用于xml解析的dom和sax模型,只是说xml与pojo的媄关p?)其实再怎么影射也是通过dom或者sax接口的实现进行解析的,q是通过新的javaSE规范Streaming API for XML (StAX), xml和OO的媄只不过q行了抽象封?把xml到pojo之间的解析部分透明化了,我们q里实际说的其实是JavaEE5.0中一个新的规范Java Architecture for XML Binding (JAXB))
比较有名的框架有:
+ castor 比较有名的一个O/X影射框架,可以Ҏxsd生成解析框架.(个h比较喜欢使用?
+ apache 的xmlbean和Commons-Digester(不知道ؓ什么会存在两个同样领域的东?可能是digester相对来说比较?因而它被许多的apache的开源项目?;
+ JAXB 是JAVAEE中的对于xml和OO对象Binding定制的新的规?标准?);
实际要研Ixml和OO的媄框?大家不妨看看现有的web service框架׃了解很多?看Codehaus?XFire 他是一个比较轻量的WS框架,AXIS2也不?
我了解的XML Binding框架p么多,如果谁知道更好用的可以告诉我,相您h.
+ hibernate ,ibatis ,jdo ,castor jdo(期待EJB3.0U的Persistence规范JPA)对于q几U框架的介绍׃说明?google一下会出来无数.
?q里不是惌ZU技?而是惛_大家对XML到database的媄有什么更好的办法,因ؓO/X,O/R都有很好的框架了,是否有X/R的好的框?
q里我只知道castor 中对从xml到database有一定的支持,但支持的q是不够,hibernate3.0U好象对xml到databaseq行了支?但是也是一些简单的支持.
不断整理中。。?/p>
JBrain框架的设计的初期目的是要提供一个基本的企业U运行环境,好?/SPAN>JVM一栗而下一期开发的目标是?/SPAN>JBrain框架的这一个运行环境的基础上,开发一套徏模语aQ?/SPAN>JBrain框架是q种模型语言的运行环境?BR>
我们Zq个目标都在研究MDAQ个?/SPAN>MDA的思想?/SPAN> ?/SPAN> Perfection”,但是实现他谈何容易,我们研究它只是研I它的思想Q通过q种思想Q能够给我们以启发?BR>
在数学计中我们要求AàB点的最短\径,可能?/SPAN>A点到BҎ很多U走法,但是q求完美的我们(其是程序员Q,L希望扑ֈ一条最短的路径。设计模式也是相同,在设计中我们惌扑ֈ设计中的最短\径,也就是设计的永恒之道Q就是设计模式中常说的无名的质)Q说白了Q就是如何设计才能ɾpȝ更容易扩张,更灵z,更稳定。模式追求的是一U最佳的解决ҎQ在q个Ҏ的指gQ我们能够跟好的d现我们所惌实现的东ѝ?BR>
数学计算的时候有一定的法则QY件设计的时候也是有一定的法则的,而这些法则,都是在追求Y件设计的守恒定律时Ş成的——什么开/闭原则,面向接口原则Q依赖倒置原则{等Q但是Y件设计中的原则也是可变的Q而且是时d展的Q要不然׃会出玎ͼ今天?/SPAN>spring非常火的场面Q?/SPAN>Ioc原则?BR>
数学计算是通过许多的公式推倒出l果的,但是我们求解的时候,会出现这U情况,Cl果Q是通过A?/SPAN>B两个公式推导出来的,模式也是一P有一些较的模式Q而这些较的模式是一些较大的模式的基?BR>
在理解模式的时候我们可以从对象的生命周期来理解?BR>
对象产生的时候需要描q对象的属性,它的存在形式Q创建模式就是用来描q这个的Q而这个对象存在就会和其他对象发生联系Q就会和其他对象发生作用Q如何描qC们之间的联系和作用就是结构模式要做的事了Q前面这些都是静态的Q对象的存在Q不可能永远静止不动的,它会Ҏ自己的需要,完成一些动作,语言中还有动词,名词QŞ容词之分呢!模式p语言一样需要有动词来描q对象,行ؓ模式是用来描述对象的行动的Q?BR>
设计模式Q实际就是一U设计中的语aQ很多的最基本的模式,是l成q种语言的基Q我们在理解模式的时候不能只是背模式Q而应该灵zȝq用他们Q让他们有机的结合在一P形成一个生动的句子。这个就好比我们学英语,不是光背一些单词,p写出一好文章的,q需要我们有语感Q理解了以后才能写出来?BR>
q个只是我对模式的一点点个h的理解,不代表所有h的观点!Q)
对于中小型的应用tomcat作ؓ服务器就_了,但是Q在我把框架往tomcat上{Uȝ时候有了一个问题,工作引擎的数据库是独立的,如何保证他和业务的数据库事务上的l一性,q里涉及到分布式事务的概念?BR>
?/SPAN>weblogicQ?/SPAN>websphereQ这U企业服务器,他们有自q事务理器,你可以配|多?/SPAN>datasourceQ这?/SPAN>datasource可以指向不同的资源(数据库,消息服务Q,事务理器就是这些资源的理中心Q当一个事务开始的时候(beginQ,事务理器会记录q监视这个事务涉及的所有可理资源Q当一个事务结束的时候(commitQ,他会把所有的资源提交Q而当E序出现异常的时候,他会把所有的资源回滚Q?/SPAN>rollbackQ。在事务边界以内Q所有的可管理资源实际都是没有提交的Q处于一U等待状态,只有当事务提交的时候,事务理器才负责把它所理的所有资源提交。事务管理器是一个全局事务理中心Q它负责把许多可理Q可以控制事务)的资源的事务l一h?BR>
Zq种q种考虑Q我在管理全局性事务的时候,选择?/SPAN>jtom?/SPAN>xapool?BR>
Jotm是一个开源的JTA实现Q是?/SPAN>ObjectWebl织开发的Q实际就是实C事务理器的功能Q而且他还支持分布式事务,如果?/SPAN>jotml合JORAM Q也是由ObjectWebl织开发的JMS实现Q用,可以实?/SPAN>JMS的事务管理。(q里我在惻IJBossCache是支持事务的cacheQ如果把它们l合在一P是不是就可以对缓存进行事务控制了Q)Q?BR>
对于jotm的用,你只要记住这个应用中只有一?/SPAN>Jotm对象?/SPAN>OK了,对于分布式事务也是一P如何保证一个应用中只用一?/SPAN>Jotm实例呢?
jotmCurrent = Current.getCurrent();
使用上面的方法,如果jotmCurrent {于nullQ说明现在的jvm中没有没?/SPAN>jotm实例Q当需要分布式的时候就不能q么判断了,你必Ljotm对象攑ֈjndi上,以后使用的时候从jndi上取可以了?BR>
如果jotmCurrent不等于空Q说?/SPAN>jvm中已l有jotm实例了,而如何得到这个实例了Q如果从q个角度去考虑Q是不行的,你可以看一?/SPAN>Jotm?/SPAN>APIQ看一?/SPAN>Current的类说明Q?BR>
http://jotm.objectweb.org/current/jotm/jdoc/
public class Current
extends Object
implements UserTransaction, TransactionManager, Referenceable, Serializable
Current 对象实际是一个事务管理器Q哈哈,我们使用jotmQ不是Zq个吗,okQ?/SPAN>you got itQ?BR>
我对jotm和事务的研究q不够深入,以上都是个h理解Q有不对的地方还请大家指出!
下面的文章,我重点对xapoolq行说明Q用他的时候问题特别多Q)Q?/SPAN>