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

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

时间2025-09-17 11:46:27分类IT科技浏览4898
导读:……我们从根本上说并不打算把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
帝国cms自动发布怎么设置(帝国cms怎么百度自动提交) 无法访问windows installer服务,联系(无法访问windows installer服务)