Spring 仍然处于企业 Java 的前沿:大数据、NoSQL 和云可移植性
JavaOne 又一次来临,今年您将看到关于 Spring 如何与 Java SE 协同工作以解决大数据、NoSQL 和企业集成挑战的会议。我们一直努力确保 Spring 通过及时支持新兴趋势和技术,始终处于企业 Java 的前沿。数据表明我们的用户对此表示赞赏。Evans Data 最近的一份报告(“Spring Source 使用情况研究”,Evans Data Corporation,2011 年 9 月)显示
- Spring 是专家 Java 开发人员的首选框架。超过三分之二的 Java 开发人员正在使用 Spring 或计划使用 Spring。
- Spring 的使用量持续增长。超过一半的现有 Spring 用户预计将增加或大幅增加其对 Spring 的使用。
- Spring 正在取得成果。70% 的 Spring 用户表示,通过使用 Spring 提高了至少 50% 的生产力,73% 的用户表示将完成项目的交付时间缩短了至少 50%。
- Spring 用户处于企业 Java 的前沿。Spring 用户更准备就绪使用云,并且 Spring 采用者更有可能已经将应用程序部署到云中。
Spring 始终提供部署灵活性。在早期,这意味着可以选择应用程序服务器,但现在扩展到可以选择云平台,包括我们自己的 Cloud Foundry。Spring 始终提供强大的数据访问支持。在早期,这意味着可以选择访问关系数据库的方法,今天扩展到一系列大数据和 NoSQL 存储、数据处理和内存数据网格功能。Spring 一直重视开发人员的生产力,并为编写服务器端 Web 应用程序提供一流的支持。如今,这扩展到满足基于 HATEOAS 的 REST API 的现代需求。
这些是当今企业中真正紧迫的问题。云无处不在,现在大数据也牢牢地出现在企业项目雷达上,创造了一系列新的需求。
- 大数据:需要存储和获取来自千兆字节、兆兆字节或拍字节非结构化或半结构化数据的数据分析。
- 快速数据:对与大量数据集进行低延迟交互的需求日益增长,这通常由当今的移动和社交应用程序驱动。
- 灵活数据:需要根据每个应用程序最合适的数据模型来调整数据访问。
- 云交付:对按需访问数据作为服务的需求不断增长,并在您选择的云上进行配置。
最新的哈佛商业评论调查表明,85% 的组织已计划或正在进行大数据计划。应用程序开发人员需要交付能够满足这种新世界并能够在任何地方(内部或外部)部署的功能强大、高质量的解决方案。NoSQL 和 NewSQL 也被用于解决各种用例,包括
- 管理非事务性数据的庞大数据流(日志、点击流)
- 欺诈检测
- 时间线(类似 Twitter)
- 同步离线和在线数据
- 在线游戏
- 文档、目录和内容管理
- 归档 - 存储大量持续的数据流,这些数据流仍然可以在线访问
- 嵌入式系统(设备中的小型数据库)
请参阅High Scalability 博客文章以了解更多详细信息。
451 Research 最近的调查数据突出了数据格局的变化。一刀切不再适用。
企业开发人员现在可以使用 Spring 和熟悉的 Spring 编程模型开始利用这些新技术。Spring 提供
- 通过 Spring Data 对Apache Hadoop 和HBase 的支持以及Spring Batch 和Spring Integration 进行大数据处理
- 通过 Spring Data GemFire 提供内存数据网格支持
- 通过 Spring Data Redis 支持 NoSQL 键值存储
- 通过 Spring Data MongoDB 支持 NoSQL 文档存储
- 通过 Spring Data Neo4j 支持 NoSQL 图数据库
- 通过SQLFire 支持 NewSQL 数据库
- 当然,传统的关系列数据库,如 MySQL、Postgres、Oracle 和 DB2,仍然有其地位,可以通过Spring JPA 和Spring JDBC 扩展进行访问,并可以通过 Spring Data REST 进行访问
围绕 NoSQL 的蓬勃发展的开源社区以及 Spring 使开发下一代数据存储和数据处理在今天变得更高效。我们没有为所有持久性存储提供单个 Java API;鉴于它们之间的根本差异,这并不现实。但我们确实提供了一个通用且熟悉的编程模型,该模型基于模板的概念以及(在可用时)存储库的概念。有关更多详细信息,请参阅 Tobias Trelle 最近的InfoQ 文章。
总而言之,JavaOne 2012 必将是一个充满行动的一周,其中包含精彩的 Java 技术演讲、主题演讲和会议,包括我们自己的大数据、NoSQL 和集成计划。希望亲自动手尝试这些技术的开发人员也不要错过 2012 年 10 月 15 日至 18 日在华盛顿特区举行的SpringOne 2GX。我们有一个内容丰富的技术议程,涵盖现代企业应用程序开发的各个方面。
spring-test-mvc 的第二个里程碑版本发布
Spring MVC Test 项目的第二个里程碑版本现已通过 SpringSource Artifactory 存储库http://repo.springsource.org/milestone 提供。
有很多新内容。在服务器端,我们添加了对 servlet 过滤器、Spring Security 的基本支持、定义默认请求属性和期望以便在每个执行的请求中重复使用以及更多内容的支持。在客户端,我们大大扩展了请求匹配和响应创建的选项。
有关更多详细信息和评论,请阅读这篇博文。
本周 Spring - 2012 年 9 月 25 日
欢迎回到 本周 Spring 的另一期!本周有 如此 多好东西可以看。你能相信我们已经开始关注 10 月了吗?
是时候考虑你将扮演谁或什么角色来庆祝万圣节了!
10 月带来了SpringOne2GX,这是 Spring 开发人员的首要盛会。查看今年活动的最终日程安排和演讲者和会议!SpringOne 2GX 是您向 Spring、Groovy/Grails、Tomcat 和云技术的开发负责人和已发表的作者学习的机会。
- Spring Security 负责人 Rob Winch 的网络研讨会视频现已提供,该网络研讨会介绍了Spring Security。
- Oleg Zhurakousky 以一篇介绍 2.2 中新 MongoDB 功能的博文开启了 Spring Integration 2.2 的发布之路。
- Gary Russell宣布了 Spring Integration 2.2 的候选版本 1。
This is intended to be the final release before GA, so users are encouraged to give feedback on this release. </LI>
- Costin Leau 宣布了Spring Shell 的 1.0.0.RC1 版本,它是 Spring Roo 中使用的 Shell 的提取,并通过 Spring 编程模型提供。
</LI>
- Roger Hughes 再次回归,这次他介绍了 Spring 3.1 缓存和配置选项,特别关注设置
CacheManager
。 - vFabric 博客对“Spring Insight 背后的拆分代理”架构进行了有趣的介绍,该架构允许将收集阶段与分析阶段分离。
- Krishna Prasad 发布了一篇关于获取 Spring Web Flow 应用程序的测试覆盖率信息的不错的文章。
- Mattias Severson 发布了一篇关于处理基于 Spring MVC 的 RESTful 应用程序中的错误的不错的文章。
- Ronillo Ang 汇编了一个关于Spring MVC 应用程序的基本组件的非常简短的演示文稿。
- JavaCode Geeks 博客发布了一篇关于使用 Spring 框架编写持久层的不错的文章。
- L'Artech 博客发布了一篇关于使用 Spring MVC 创建 Web 应用程序登录表单的精彩文章,这是该系列的第 3 部分。
Spring Integration 2.2 中的新功能(第 2 部分 - 事务同步)
引言
这是博客文章系列的第二部分,重点介绍了 Spring Integration 2.2 中的一些新功能,这些功能是在最近发布的候选版本 1之后提供的。第一部分讨论了 MongoDB 适配器。Spring Integration 2.2 引入了对将非事务性资源与事务同步的扩展支持。
背景
多年来,Spring 一直为将资源与事务同步提供一流的支持。在许多情况下,此功能用于同步由多个事务管理器管理的事务,以便实现 Dave Syer 在其优秀的JavaWorld 文章中描述的“尽力而为 1PC”模式。例如,它通常用于同步 JMS 提交与 JDBC 提交。
Spring Integration 长期以来一直支持此功能,方法是在轮询器上定义一个<transactional/>
元素。此版本进一步增强了此功能,允许将非事务性资源与事务同步。
例如,考虑一个<file:inbound-channel-adapter/>
和一个集成应用程序,该应用程序在文件出现在目录中时读取该文件,并更新数据库。这……
Spring Integration 2.2.RC1 中的新功能(第 1 部分 - MongoDb)
引言
Spring Integration 2.2.RC1 已发布,我们将在未来几天发布一系列博客,讨论其一些新功能。在本篇博客中,我们将讨论 MongoDb 入站和出站通道适配器。此处提供了所有讨论的示例的完整集合此处MongoDb 出站通道适配器
MongoDb 出站通道适配器允许您将消息有效负载写入 MongoDb 文档存储。您可以在下面看到 MongoDb 通道适配器的最简单配置
<int-mongodb:outbound-channel-adapter id="deafultAdapter"/>
它将使用MongoDbFactory的默认实例进行初始化(默认 bean 名称是“mongoDbFactory”),否则您可以通过mongodb-factory属性提供其引用。
现在您可以运行MongoDbOutboundAdapterDemo。运行后,打开终端窗口并启动 MongoDb CLI
$> mongo
在 MongoDb CLI 中键入查询
> db.data.find({})
您应该会看到我们刚刚创建的 3 个文档条目
{ "_id" : ObjectId("505ff83d03649ed6881d…
Spring Integration 候选版本 1 发布!
Spring Shell 1.0.0.RC1 发布
本周 Spring - 2012年9月18日
欢迎来到另一期本周 Spring!本周我在伊利诺伊州布卢明顿-诺马尔,与 StateFarm 讨论 Spring 项目:MVC、REST、移动和 Android。这里的开发人员都是代码忍者。至少可以说,听取他们全天进行的内部讨论令人大开眼界。不要错过华盛顿特区的年度 Spring、Groovy 和 Grails 活动:SpringOne2GX。如果您尚未注册,现在是时候了!哦,别忘了,如果您在美国,今天是全国芝士汉堡日!所以……祝您胃口好!
<LI> Chris Beams has announced the availability of <a href ="http://www.springsource.org/node/3654">Spring Framework 3.2 M2</a>, which features many new features including improved <CODE>TestContext</CODE> support, Spring MVC improvements, asynchronous <CODE>@Controllers</CODE>, and lots of bug-fixes and improvements. </LI>
<LI> This month's SpringSource webinar is coming fast - <a href ="http://www.springsource.org/node/3653"> Spring Security with Rob Winch</a>. Be sure to register now! </LI>
<li> Martin Lippert has announced the availability of the <a href="http://www.springsource.org…
Spring Data Neo4j 2.1.0 候选版本 4 发布
在 Spring Data GA 发布列车即将到来之前,我们希望收集一些关于Spring Data - Neo4j中修复和更新的反馈。因此,我们发布了候选版本 4。
以下是此候选版本中所做更改的快速概述,比我们预期的要长,但仍然非常有用。
2.1.0.RC4(2012-08-19)中的更改
- DATAGRAPH-296 更新到 Neo4j 1.8.RC1、空间、cypher-dsl 和 java-rest-binding 的稳定版本,已适应 API 更改
- DATAGRAPH-285 为保存和删除添加应用程序事件
- DATAGRAPH-263、DATAGRAPH-212、DATAGRAPH-272、DATAGRAPH-147 重构派生查询创建,添加了对多个索引字段和所有查询关键字的支持
- DATAGRAPH-294 用于数值索引值的派生查找器方法
- DATAGRAPH-293 通过图形 ID 查找对象
- DATAGRAPH-275 对 TypeRepresentationStrategyFactory 的空图形进行非优雅回退
- DATAGRAPH-246 允许实体作为派生查找器的参数
- DATAGRAPH-281 添加了对枚举和日期作为 Cypher 参数的支持
只需将您的依赖项版本指向2.1.0.RC4
。由于人工操作和时间限制,在线资源目前尚未更新。这些资源将在 2.1.0.RELEASE 中提供。