(安全)文件传输,唯一的飞行方式……错误复制

工程 | Josh Long | 2010年8月23日 | ...

有很多方法可以解决问题。如今,许多应用程序都依赖于消息传递(AMQP、JMS)来弥合不同系统和数据之间的差距。其他一些应用程序依赖于 RPC(通常是 Web 服务或 REST)。然而,对于很多应用程序来说,文件传输仍然是一种生活方式!支持文件传输有几种常见的方法,但三种最常见的方法是使用共享挂载点或文件夹,使用 FTP 服务器,以及 - 对于更安全的交换 - 使用 SSH(或 SFTP)。众所周知,Spring 一直以来都为消息传递(JMS、AMQP)和 RPC 提供了一流的支持(还有太多……

Grails 的 RabbitMQ 插件 - 早期访问

工程 | Peter Ledbrook | 2010年8月23日 | ...

RabbitMQ 是一款基于 高级消息队列协议 (AMQP) 的轻量级、可靠、可扩展和可移植的消息代理。它非常适合异构系统和云平台,但几乎可以用于任何大小的消息传递需求。您通常不会通过 JMS API 访问它,事实上 JMS 插件也无济于事,但现在有一个新的插件专门用于简化从 Grails 应用程序使用 RabbitMQ 的过程。

当前版本的插件 (0.2) 功能相对有限,但您已经可以发送和接收消息了。我鼓励您尝试一下……

使用 Python 构建 RabbitMQ 应用程序

工程 | Greg L. Turnquist | 2010年8月19日 | ...

RabbitMQ 是一款基于 高级消息队列协议 (AMQP) 的功能强大的消息代理。由于 AMQP 规范的特性,可以很容易地从许多平台连接到它,包括 Python。在本博文中,我们将

  • 创建一个简单的股票行情 Python 应用程序
  • 创建一个经纪人 Python 应用程序,用于决定何时买卖。
  • 比较 pika(RabbitMQ 团队创建的 AMQP 库)和 py-amqplib
您可以在 http://github.com/gregturn/amqp-demo 找到此博客的所有源代码。这假设您已经根据 平台说明 安装了 RabbitMQ 并启动了它。就我个人而言,它在我的 Mac OS X 机器(雪豹)上运行。

顺便说一句

本博文中编写的代码仅用于演示目的。不要依赖这些算法来获取财务建议。
言归正传,让我们编写一些代码吧!

构建股票行情

股票行情系统是消息传递解决方案的一个很好的例子。证券交易所将消息发布到代理,指示股票名称、价格和时间。
import pickle
import random
import time

class Ticker(object):
    def __init__(self, publisher, qname):
        self.publisher = publisher

        # This quickly creates four random stock symbols
        chars = range(ord("A"), ord("Z")+1)
        def random_letter(): return chr(random.choice(chars))
        self.stock_symbols = [random_letter…

使用 Grails 简化 Spring Security

工程 | Peter Ledbrook | 2010年8月11日 | ...

Spring Security 是一个用于保护应用程序的功能强大的库,它提供了令人眼花缭乱的众多选项。基于 Spring,它可以轻松地集成到 Grails 应用程序中。但为什么不省去麻烦,使用 新的改进的 Grails 插件 呢?

该插件经历了几个演变阶段,始于 Acegi 插件。它最新的版本是针对 Spring Security 3 和 Spring 3 的完全重写。其中一个结果是,该插件仅适用于 Grails 1.2.2 及更高版本。另一个重大变化是,不再只有一个 Spring……

Virgo 里程碑 M03 发布

工程 | Christopher Frost | 2010年8月10日 | ...

Virgo 2.1.0.M03-incubator 可从 Virgo 网站 获取。更改包括

  • 进一步的性能改进,特别是针对 Windows 用户。
  • 将 Logback 版本更新到 0.9.24,将 SLF4J 更新到 1.6.1
  • 次要错误修复

性能改进是通过调整入口/出口跟踪的日志级别实现的。

由于 Logback 的新版本,配置文件 'serviceability.xml' 的语法略有更改。更多信息可以在这里找到 这里

我们现在已经发布了一个关于 Virgo 未来发展方向的 计划 大纲,以便您更好地了解我们的发展方向。

Hyperic 通过 4.4 版中的 vCenter API 扩展了 vSphere 支持

工程 | Charles Lee | 2010年8月6日 | ...

SpringSource Hyperic 4.4 于本周早些时候发布,通过与 VMware vCenter 集成,增强了对 VMware 虚拟化环境的管理。虽然 Hyperic 长期以来一直支持 VMware 技术(即 VMware Infrastructure 或 VI),但 VI Java API 的可用性(http://vijava.sf.net)使我们的工作变得更加轻松,因为 Power SDK 简化了 Java 应用程序当时与 VI 交互的方式。通过采用 VI Java API,我们能够轻松地跟上 VMware 从 VI 到 VMware vSphere 的发展,正如我们今天所知。这也使我们能够……

Spring Web Flow 2.2.0.M1 发布

工程 | Rossen Stoyanchev | 2010年8月5日 | ...

我很高兴地宣布 Spring Web Flow 2.2 的第一个里程碑版本现已可供 下载。该版本也可通过 Maven 里程碑存储库获取 http://maven.springframework.org/milestone。与 Spring Web Flow 2.1 一样,此版本需要 JDK 1.5、Spring 3 和 Spring Security 3。

此版本的重点是满足 JSF 用户的需求,方法是扩展受支持的 JSF 2 功能 列表。不久前 Web Flow 2.1 使得能够使用 JSF 2 依赖项,而无需使用今天通常与 JSF 1.2 一起使用的单独的 Sun Facelets jar 文件。

在 Spring Web……

Spring GemFire 1.0.0.M1 发布用于 Java 和 .NET

工程 | Costin Leau | 2010年8月3日 | ...

我很高兴地宣布 Spring GemFire 项目(Spring 家族中的最新成员)的第一个里程碑 版本 发布。Spring GemFire(简称 SGF)将 Spring 的概念和编程模型引入 GemFire,GemFire 是 SpringSource 的分布式 数据管理 平台。该版本适用于 Java.NET

1.0.0.M1 中的功能包括

  • GemFire 基础设施的声明性依赖注入样式配置(例如缓存, 区域, 兴趣等)
  • 将异常转换为 Spring 的可移植DataAccess异常层次结构
  • 模板和回调支持,以便轻松访问本机 API
  • 事务管理支持
  • Spring 支持的 GemFire 托管对象的连接
  • 自动生成非反射的实例化器s
请注意,其中一些功能目前仅在 Java 版本中可用。
通过 SGF,Spring 用户在与 GemFire 交互时应该会感到宾至如归,而熟悉 GemFire 的开发人员将看到 Spring 容器、其强大的 AOP 集成和多功能服务抽象带来的好处和灵活性。但不要听我的一面之词 - 下载该项目并试用示例应用程序。它是一个基于控制台的“shell”,允许与数据网格进行临时交互;可以启动和停止节点,并查看在多个客户端之间透明共享的信息。

期待您的反馈!

Google App Engine 中的 Spring Security

工程 | Luke Taylor | 2010年8月2日 | ...

Spring Security 以其高度可定制性而闻名,因此,在我第一次尝试使用 Google App Engine 时,我决定创建一个简单的应用程序,该应用程序将通过实现一些核心 Spring Security 接口来探索 GAE 功能的使用。在本文中,我们将了解如何

  • 使用 Google 帐户进行身份验证。
  • 当用户访问受保护的资源时,实现“按需”身份验证。
  • 使用应用程序特定的角色补充 Google 帐户中的信息。
  • 使用本机 API 将用户帐户数据存储在 App Engine 数据存储区中。
  • 根据分配给用户的角色设置访问控制限制。
  • 禁用特定用户的帐户以防止访问。

您应该已经熟悉将应用程序部署到 GAE。启动和运行基本应用程序不需要很长时间,您会在 GAE 网站 上找到大量关于此方面的指南。

示例应用程序

该应用程序非常简单,使用 Spring MVC 构建。在应用程序根目录部署了一个欢迎页面,您可以在身份验证并向应用程序注册后进入“主页”。您可以在这里尝试在 GAE 中部署的版本 这里

注册用户存储为 GAE 数据存储区实体。在第一次身份验证时,新用户将被重定向到……

GORM 陷阱 (第 3 部分)

工程 | Peter Ledbrook | 2010年7月28日 | ...

很高兴听到人们发现这些文章很有用,因此,我很高兴地为该系列添加另一篇文章。这次我将再次讨论关联,但重点是它们何时加载到内存中。

2010年8月2日更新 我添加了有关一对多关系的急切获取的更多信息,因为您需要了解一些问题。

偷懒很酷

人们学习 GORM 关系时首先了解到的内容之一就是,默认情况下它们是延迟加载的。换句话说,当您从数据库中获取一个域实例时,它的任何关联都不会被加载……

获取 Spring Newsletter

关注 Spring Newsletter

订阅

领先一步

VMware 提供培训和认证,助您快速提升技能。

了解更多

获取支持

Tanzu Spring 通过一个简单的订阅提供 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

查看 Spring 社区所有即将举行的活动。

查看全部