模式匹配框架?

2023-12-27

我很快就会处理一个 Java (GWT) 项目(相关问题 https://stackoverflow.com/questions/1953380/lightweight-message-bus-library)。也许我想在这里扩展一些东西,但我想知道是否有任何用Java编写的“模式匹配框架”(真的不知道是否有一个术语)? (也许是我对 Erlang 的长期接触让我的想法一直围绕着模式扭曲:-)

我将使用“消息传递”架构在 Java 组件之间进行通信,并且我希望有效地将消息“匹配”到操作。

也许我应该坚持使用本地化状态机,或者还有其他什么吗?

Updated:“消息”将是携带“仅数据”的实例对象。我目前不打算使用继承来向所述消息传达语义,而是使用简单的属性。

Update2:在录制了 SO 的集体智慧后(see here https://stackoverflow.com/questions/1955662/does-scala-run-on-gwt),看来 Scala 也超出了范围。

(注:这里是Java新手...请温柔点)


您可能正在寻找的是Java空间 http://java.sun.com/developer/technicalArticles/tools/JavaSpaces/(元组空间的 Java 实现)和基于对象属性的匹配对象(在 Java 空间世界中称为“条目”)。

空间存储具有特定属性或条目的对象(例如关联的货币、城市、用户等)。然后,您可以通过指定 0 个或多个此类条目从空间中选择对象,从而取回 0 个或多个对象。因此,它对于消息传递和生产者/消费者场景尤其有用。

因此,您可以存储具有特定属性(例如消息类型、消费者类型等)的对象(消息),并且您的消费者将根据一组 0 个或多个属性选择这些对象。请注意,这doesn't需要修改您正在存储的基础对象。你可以经营一个空间进行中(在一个 JVM 中)——它不仅仅是一种网络存储模式。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

模式匹配框架? 的相关文章

  • 使用 jpql 和 jpa 从日期字段中提取年份

    我想从数据库中的一行中提取年份部分 以便将其与值进行比较 这是我的功能 public List
  • 如何测试调用父类的受保护(不需要的)方法的方法?

    我陷入了一个非常奇怪的情况 我有一些需要测试的特定代码 这里是 public class A The real method of real class is so big that I just don t want to test it
  • 无法实例化接收器 com.parse.GcmBroadcastReceiver

    我正在编写一个使用 GCM 通知和解析推送的离子应用程序 这个应用程序正在使用这些插件 com ionic keyboard 1 0 3 Keyboard com phonegap plugins PushPlugin 2 4 0 Push
  • 是否可以从另一个方法传递 args[] 来调用 main 方法?

    我试图从另一个传递参数的方法调用类的主要方法 就像从命令行运行该类时一样 有没有办法做到这一点 您可以致电main方法就像您调用任何其他 静态 方法一样 MyClass main new String arg1 arg2 arg3 Exam
  • 用 java 编写解释器时的 switch 或 if 语句

    当前的作业需要我编写一个程序 以一种非常微小且基本的编程语言 行为有点像 FORTRAN 来读取包含指令的文件并执行这些指令 基本上它是我猜的语言的简单解释器 它是完全线性的 所有语句都是按顺序定义的 并且只有字符串和整数变量 我需要查找和
  • 如何将自定义日志处理程序添加到 Google App Engine?

    我正在尝试向我的 java 应用程序添加自定义日志处理程序 我已经实现了一个扩展 java util Logging Handler 类的 InnerLogger 类 在我的logging properties中声明为处理程序 handle
  • 尝试在java中的Arraylist中查找对象的所有出现

    我有一个 Java ArrayList 我需要查找其中出现的所有特定对象 ArrayList indexOf Object 方法只找到一次出现 所以看来我还需要其他东西 我认为你不需要太花哨 以下应该可以正常工作 static
  • 支持通过 OAuth 进行 Facebook/Twitter 身份验证的 CAS 服务器

    我正在寻找一个支持 Facebook Twitter 通过 OAuth 进行单点登录身份验证的 CAS 服务器 我检查过 JASIG CAS 服务器 但它看起来不支持它们 我的 java web 应用程序基于 Spring Security
  • 打印 jasper 文件时执行报表 SQL 语句时出错

    我修改了一个旧项目 但无法确定这段代码有什么问题 使用下面的 jrxml它创造 jasper文件 当我打印 jasper 文件时 使用此代码JasperPrint jasperPrint JasperFillManager fillRepo
  • 如何从 Google Custom Search API 获取超过 100 个结果

    我正在尝试使用 Google Custom Search API 在 Java 中进行研究 因此 我需要为每个查询提供一个大的结果集 然而 我似乎仅限于前 100 个结果 这比我需要的要少得多 我使用这样的列表方法 list setStar
  • 抽象类或接口。哪种方式是正确的?

    有两种方法可以选择抽象类或接口 微软解决方案和Oracle解决方案 微软 设计指南 请使用抽象 在 Visual Basic 中为 MustInherit 类而不是接口来将协定与实现分离 http msdn microsoft com en
  • HTTP PUT 在 Java 中上传文件

    Edit 我想我已经弄清楚如何执行二进制数据部分 仔细检查代码 但我很确定我做对了 现在 当我尝试按照中所述完成上传时遇到新错误Vimeo API 文档 http vimeo com api docs upload streaming Ed
  • mgwt - 以编程方式改变方向

    是否可以在 gwt mgwt 应用程序中更改强制执行特定的屏幕方向 可以说我希望用户始终以横向模式使用应用程序 这取决于 是作为phonegap应用程序 而不是在浏览器内部 如果您作为 Web 应用程序运行 则不需要t get any co
  • 在服务器内部调用 Web 服务

    我有一个网络服务 getEmployee 当传递 id 时 它会获取单个员工的员工详细信息 同一服务器上的另一个 Web 服务 getEmployeeList 当传递一个部门时 它会获取整个员工列表 这将获取部门的 ID 然后调用 getE
  • 无法映射 ftl 文件中的 jsonRequest 属性

    我想在 FTL 文件中映射下面的 json 文件市场和子市场字段 但是当我尝试下面的代码时 它没有映射 有人可以帮助我吗 我从 2 天开始就无法映射它 Json请求 ProcessOrderRequest prevalidationMode
  • scala中的协变类型参数需要在java接口中保持不变

    我有一个看起来像这样的特征 一些进一步的信息可以在我自己提出了这个相关问题 https stackoverflow com questions 3695990 inheritance and automatic type conversio
  • Selenium - 等待网络流量

    我们将 Selenium 与 Java API 和一些 Javascript 用户扩展一起使用 我们在应用程序中使用了大量 AJAX 调用 我们的许多测试随机失败 因为有时 AJAX 调用完成得比其他时候慢 因此页面未完全加载 我们通过等待
  • Google Cloud Messaging - 立即收到或长时间延迟收到的消息

    我在大学最后一年的项目中使用谷歌云消息传递 一切正常 但我在使用 GCM 时遇到了一些麻烦 通常 消息要么几乎立即传递 要么有很大的延迟 我读过这篇文章 但我真的认为它不适用于这种情况 GCM 通常会在消息发送后立即传送消息 然而 这并不总
  • JMockit - 初始化问题

    当我使用以下测试时 我收到警告 警告 JMockit 是按需初始化的 这可能会导致某些测试失败 请检查文档以获取更好的初始化方法 这是我的测试实现 package test import static mockit Mockit impor
  • 使用 Runtime.getRuntime().exec() 进行重定向不起作用

    我需要从程序执行命令 命令行是可以的 我在终端试了一下 但是在程序中不行 我从我的代码中添加一个副本 File dir new File videos String children dir list if children null Ei

随机推荐

  • 如何使用包含日期的字典对数组进行排序?

    In my Swift项目有一个Array with Dictionaries Each Dictionary包含一个String of date 我怎样才能得到一个新的Arraywith date从最新到最旧 谢谢 var array d
  • iOS 14 上的 UDP 监听器

    我有一个关于如何在 iOS 14 上设置 UDP 侦听器的问题 我有一个 UDP 侦听器 该侦听器过去一直有效 但更新到 iOS 14 后 它偶尔有效 根本无效 它位于 NSObject 中 并在端口 15000 无特定 IP 地址 上侦听
  • 关于OCaml中的模式匹配算法

    我正在为我用 OCaml 设计的函数式语言编写编译器 我希望我的小语言具有模式匹配的功能 但是 我陷入了想出一种算法来实现它的困境 当我深入研究这个问题时 它看起来真的很复杂 我用google找不到太多关于相应算法的有用信息 如果有人能给我
  • 如何将列表中的项目连接(连接)为单个字符串

    如何将字符串列表连接成单个字符串 例如 给定 this is a sentence 如何得到 this is a sentence For handling a few strings in separate variables see H
  • 为什么我在使用 chrome.bluetooth.getAdapterState 时得到未定义的对象?

    我在 Linux 上使用 Google Chrome 33 0 1729 3 dev 基于 Ubuntu 12 04 的基本操作系统 0 2 我创建了一个 Chrome 应用程序并配置了 manifest json 以授予蓝牙权限 name
  • 返回页面导航时,列表视图对具有复选框的其他列表视图项目应用检查

    我有一个ListView of CheckBox控件中的复选标记神秘地应用于控件中的其他项目ListView当页面包含ListView导航已返回 具体来说 我将复选标记应用于ListView包含大约 300 个项目 然后我点击一个Butto
  • java中为什么要嵌套抽象类

    我想知道嵌套抽象类意味着什么 例如 abstract class A abstract class B 是否有我们可能需要的任何用例或场景 例如设计 或者这种模式有什么有用的吗 为什么 Java 允许我们这样做 在设计中 您需要基类clas
  • 有条件地显示导航小部件的项目

    我想向菜单项添加一个条件 以便当用户登录时 他会根据自己的情况看到菜单user type 这是我的代码 Nav widget encodeLabels gt false options gt class gt sidebar menu it
  • Delphi函数比较两个TStream的内容?

    我需要比较两个TStream后裔具有相同的内容 对我来说唯一有趣的结果是布尔值是 否 我要编写一个简单循环逐字节检查流内容 But I m curious了解是否已有函数 我没有在 DelphiXE 或 JCL JVCL 库中找到任何内容
  • 数据表 - 如何在 url 中传递搜索参数

    我希望能够链接到带有数据表的页面 该数据表将在 url 中传递搜索参数值 目标是使用搜索值参数对打开的数据表页面进行预过滤 我已经设置了一个 jsfiddle 来处理一些示例数据 http jsfiddle net lbriquet 9Cx
  • 如何使用 OpenMP 编译 OpenCV

    用户在这个 SOF 帖子 https stackoverflow com questions 28938644 opencv multi core support建议使用以下命令构建 OpenCVWITH OPENMP启用 某些 多核支持的
  • 遗传算法和动态规划哪个是解决经典0-1背包问题的最佳方法? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 在 Java 中表达匿名交集类型

    这些都不能编译但是 我想表达匿名的 Java中的交集类型 https docs oracle com javase specs jls se13 html jls 4 html jls 4 9这样 A B 表示实现 扩展 A 和 B 接口的
  • 使用 startMonitoringEventWithType: error: 努力检测 wifi SSID 更改

    苹果似乎通过 Yosemite 和 CoreWLAN 框架引入了相当大的变化 我想使用它的新 API 引用头文件 method param type A CWEventType value param error An NSError ob
  • 在握手过程中从 SSLEngine Wrap 方法获取 SSLException

    当我在 Java 应用程序上运行客户端握手进程以建立 SSL 连接时 我得到SSLException第二次调用 wrap 方法时 我知道此时客户端发送了CLientKeyExchange and ChangeCipherSpec到服务器 我
  • NodeJs/Formidable,上传图片错误

    我正在尝试使用 NodeJs 和 Formidable 制作图像 文件上传表单 我没有使用快递 简直太强大了 但无论如何 我尝试了最常见的脚本 但没有一个有效 我的代码基本上与本教程中的代码完全相同 http justinkjchang w
  • asp.net mvc 4,线程通过模型绑定改变?

    我在 MVC 4 应用程序中使用自定义 ModelBinder 但它是在与 global asax 中的请求事件处理程序不同的线程上调用的 这使得在 ThreadLocal 中设置性能分析上下文失败 threadId 在每行开头的括号中 您
  • 什么是“原始 HTTP 标头”? “HTTP 标头”和“原始 HTTP 标头”有什么区别?

    在 Zend Framework 的 Response Class 中 有两个不同的数组用于存储标头 headers and headersRaw 并且有适当的方法来设置每一项 setHeader getHeaders clearHeade
  • 控制回收者视图的滑动速度

    我有一个RecyclerView其中我有一个图像 一些TextViews and 2 ImageButtons 我有 7 8 个这样的行要显示在我的Activity 在 android 4 4 4 及以下版本中滚动非常平滑 但在棒棒糖中会产
  • 模式匹配框架?

    我很快就会处理一个 Java GWT 项目 相关问题 https stackoverflow com questions 1953380 lightweight message bus library 也许我想在这里扩展一些东西 但我想知道