首页IT科技spring文件服务器(SpringSource新应用服务器发布 摒弃Java EE)

spring文件服务器(SpringSource新应用服务器发布 摒弃Java EE)

时间2025-06-13 23:23:25分类IT科技浏览3444
导读:……我们从根本上说并不打算把Spring用户社区驱赶到任何方向。我们仅仅是给用户另一种选择。Spring的哲学是用户总是正确的。用户是聪明的,他们完全明白自己的需要。不管用户是否选择SpringSource应用平台,我们觉得用户总会欢迎多一点选择的……Java EE 6重点在模块性,这个方向是正确的。很可能SpringSource...

……我们从根本上说并不打算把Spring用户社区驱赶到任何方向           。我们仅仅是给用户另一种选择                。Spring的哲学是用户总是正确的      。用户是聪明的            ,他们完全明白自己的需要         。不管用户是否选择SpringSource应用平台                 ,我们觉得用户总会欢迎多一点选择的……Java EE 6重点在模块性    ,这个方向是正确的                。很可能SpringSource应用服务器会在一定程度上符合Java EE 6         。Java EE 6分成A            、B                 、C三种规格(profile)      。我们几乎肯定会实现A和B规格         ,C规格里面我非常确定将实现Entity Beans 1.1模型以及一些遗留技术                。我还不能说是100%确定                  ,因为Java EE 6规范还没有定案            。传统的应用服务器模型正逐渐过时   。BEA和IBM正在用OSGi逐步重新实现他们的应用服务器                。 SpringSource现在就提供OSGi支持               。从统计数字上看       ,大多数人都不会部署到完整的平台上      ,他们部署到Tomcat。他们选择了Spring 编程模型而非Java EE             。市场已经作出了选择                  ,问题只是开发者还要和服务器斗争多长时间                 。

它是第一个建立在现代技术基础上的产品   。符合Java EE规范已经不是至高无上的目标           。干净的代码基础是我们的一项竞争优势                。我们在设计和实现中满足的是现今的需求          ,而不是10年前的需求      。 POJO编程是现在行业的方向所在         。过去POJO编程是被强行嫁接到其它产品上的                。在我们的产品中   ,POJO编程是设计的前提         。 SpringSource应用平台采用的OSGi技术是下一代技术的基础      。

……JPA和JMS都支持                  ,但我们没有包含任何特定实现                。对于JPA             ,我们支持Hibernate    、 OpenJPA和Toplink            。我们在OSGi环境中增加了对加载时织入的支持,而且会尊重应用的边界               ,因此不会意外污染应用间共享的库   。不包括 JNDI                ,我们用OSGi Service Registry来取代它                。Servlets是通过内嵌的Tomcat来支持的               。JEE中有而SpringSource应用平台没有的东西包括 Entity Beans等等。这个平台引入了应用的概念  ,应用由一个或多个Bundle组成             。应用中的包有明确的作用域            ,可以防止发生应用间的冲突                 。在应用把服务发布到OSGi service registry的情况下                 ,防止冲突尤其重要    ,谁也不想见到服务之间发生冲突   。

我 们引入了Import-Library语句         ,因此在应用中使用第三方库变得更加简单           。你不需要再写一大串不直观的 Import-Package声明                  ,Import-Library可以自动为指定的库引入所有必需的package                。像Hibernate JPA这样的库还可以跨多个Bundle       ,可见Import-Library确实物有所值      。

至于为了让Spring DM在平台中运行而进行的扩展      ,为数不多         。Spring DM掌控下的Bundle(Spring DM powered bundles)是包含META-INF/spring/*.xml文件的普通OSG Bundle                。Bundle启动的时候META-INF/spring/*.xml文件会自动成为该Bundle的 ApplicationContext         。Spring DM提供了一种机制让各Bundle通过Spring NamespaceHandler导入和导出服务      。

一个PAR(Platform ARchive)本质上是一组OSGi Bundle                  ,通常其中有一部分是在Spring DM掌控下的                。这些Bundle共同组成了一个逻辑上的应用            。编程的时候完全是纯粹的OSGi         、Spring和Spring DM——PAR没有改变什么   。简单来说我们避免做这样的事                。Buddy类装载                  、动态import       、require-bundle          ,这些我们都明确回避   ,因为维持一致的类空间太困难了               。我们也不会提供任何专有的替代机制。

相 反                  ,我们给Equinox增加了一些低级的钩子             ,以实现典型的场景下的资源装载             。我们扩展了类装载来支持加载时织入,并且把装载语义丢到一边                 。我们操纵 context classloader               ,让第三方一如既往地看到类   。PAR是其中的核心角色                ,因为它定义了上下文类装载以及加载时织入的可见范围           。

对于一些最糟糕的情况  ,我们会提供修补版的库            ,让它们能在OSGi中工作                。修补版的库可以通过SpringSource Enterprise Bundle Repository获得                 ,我们的修改也会提交回相应的项目      。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
批量修改pak密码(chpasswd命令 – 批量更新密码) python中的for循环和while循环(python中for循环的底层实现)