java项目中在哪里编写和存储mongoDB的map/reduce函数

2024-04-22

对于在 Java 项目中的何处以及如何编写和存储 javascript map/reduce 函数以便与 MongoDB 数据库一起使用,有人有任何建议或知道任何最佳实践吗?

我正在寻找的标准是:

在编写和编辑函数时,我希望受益于 IDE 提供的语法突出显示和错误检查(我使用的是 Eclipse)。

如果可能的话,我不想在完成编辑后将函数复制到其他位置。

我宁愿将函数存储在源代码中而不是数据库本身,以便于参考、版本控制等。

任何关于如何解决这个问题的例子都会很棒。

编辑:我不确定我是否正确解释了自己,所以这是另一种方式:

我不是在问基本的资源管理。如果可能的话,我所追求的是一个工作环境,让我能够在“就地”编辑函数的同时享受 IDE 的优势。如果我遗漏了一些非常明显的东西,请原谅我。

我想要避免的是您可能会在 SQL 中看到的情况,例如当它作为字符串存储在类文件中时:

private static final String MAP_FUNC = 
    "function() { " +
    "   emit(this.id, {total : this.total}); " +
    "};";

或者在 java 属性文件中:

map.func=function() {
\       emit(this.id, {total : this.total});
\   };

您必须在其中输入大量无关的字符,例如“s和\s。您必须将其写在其他地方,然后复制并粘贴它并添加这些字符(或者您可能有一个可以为您完成此操作的工具 -你仍然必须这样做)。

由于在 .js 文件中编写 javascript 时,它会被 Eclipse 验证,因此我不想执行任何此操作。我希望将函数存储在 .js 文件中,以便在需要时可以通过 map/reduce 调用轻松使用它们。

有人这样做或类似吗?我最初的想法只是为每个函数创建一个 .js 文件,但是一个只有匿名函数的 .js 文件在 eclipse 中验证失败,这使得它毫无意义 - 你必须将它分配给一个 var - 这意味着它的格式不适合 Map/Reduce 的使用。我想我可以创建仅包含函数内容的文件吗?但这一切听起来有点混乱,我希望其他人可能也遇到过这个问题,并有一个简洁的解决方案。


我在大多数开源项目(包括 Spring 等)中使用和看到的约定是将所有非 java 文件放在资源目录下的描述性目录下:

module-root/
    src/
        main/
            java/
                (Java sources go here)
            resources/
                log4j.xml
                spring/ (spring xmls go here)
                sql/ (sql scripts go here)
                mongo/ (<-- seems like a good place for mongoDB functions)
        test/
            unit/
                java/ (unit test java sources go here)
                resources/ (unit test specific resources - usually none)
            integration/
                java/ (integration test java sources go here)
                resources/
                    spring/ (usually an ITestAssembly.xml goes here)

然后,构建文件将资源打包到资源 jar 中,该资源 jar 与所有其他 jar 一起部署。

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

java项目中在哪里编写和存储mongoDB的map/reduce函数 的相关文章

随机推荐

  • 使用 hibernate 获取数据库中的所有表

    有没有办法使用 hibernate 检索数据库中所有表的名称 我执行了查询SELECT TABLE NAME FROM USER TABLES在 oracle Db 中 它工作得很好 但当涉及到 DB2 时 就不会了 您可以使用 List
  • 等待嵌套异步调用完成

    我有一系列嵌套的异步调用需要在我的代码继续之前完成 函数 save part1 调用 sqlite 数据库并返回感兴趣的行 对于每一行 我都会进行 ajax 调用以远程保存它们 根据我所读到的有关 Promise 和 Deferred 的内
  • Visual Studio - 过滤掉 nvcc 警告

    我正在编写 CUDA 程序 但收到令人讨厌的警告 Warning Cannot tell what pointer points to assuming global memory space 这是来自 nvcc 我无法禁用它 有没有办法过
  • CustomVision:操作返回无效状态代码:“NotFound”

    我正在使用 NuGet 包Microsoft Cognitive CustomVision Prediction版本1 2 0 我创建了 1 个试验项目并用一些图像对其进行了训练 现在 当我尝试使用 API 调用 API 进行预测时Pred
  • 使用node.js访问DOM

    我想访问 html 文件并使用 node js 通过 id 获取元素 这是我的 html 文件
  • 如何有效计算文档流中文档之间的相似度

    我收集文本文档 在 Node js 中 其中一个文档i表示为单词列表 考虑到新文档以文档流的形式出现 计算这些文档之间相似性的有效方法是什么 我目前对每个文档中单词的归一化频率使用余弦相似度 我不使用 TF IDF 词频 逆文档频率 因为我
  • 未提供所需的防伪令牌或该令牌无效 - 仅限 Safari

    我有一个具有典型 xss 保护的 asp net mvc 2 项目 在每个表格内和 ValidateAntiForgeryToken 在每个帖子操作上 这在 Chrome Firefox 和 IE 中按预期工作 但我在 Safari v 5
  • 检查一个点是否在 ConvexHull 中?

    我无法理解如何计算 n 维点是否在 n 维凸包内 这里提出了一个非常相似的问题 相同 查找点是否位于点云的凸包中的有效方法是什么 https stackoverflow com questions 16750618 whats an eff
  • Archiva 忽略 Security.properties

    似乎 archiva 2 2 完全忽略了安全属性 我正在关注这个文档 https archiva apache org docs 2 2 0 adminguide customising security html我已经在下面设置了 sec
  • 创建 Javascript Api 接口

    我目前正在研究 php 中查询 sql 数据库的解决方案 但是 我希望其他网站能够查询数据库 或php中的函数 我搜索谷歌 但由于跨域策略 我认为 我无法找到如何将这些函数公开给javascript 有人知道我该怎么做吗 Try soap
  • jQuery鼠标的.click()是通过键盘导航启动的

    我发现 jQuery 的奇怪行为click事件 如果我们使用键盘导航 辅助功能情况 则通过 Enter 或 Space 启动单击 这取决于我们使用的是哪个 HTML 元素 jsfiddle 上有一个测试页面 您可以尝试在结果框架中使用键盘导
  • iOS-将变量传递给视图控制器

    我有一个带有视图控制器的视图 当我在屏幕上显示此视图时 我希望能够从调用类向它传递变量 以便我可以设置标签等的值 首先 我只是尝试为其中一个标签创建一个属性 然后从调用类中调用它 例如 SetTeamsViewController vc S
  • 如何在 Edge 浏览器中使用 height:-webkit-fill-available?如何让 div 填充 Edge 中的可用空间?

    I am using bootstrap to preview the mobile device as follows 它在 Chrome 中运行得非常好 但不是边缘 我的 HTML CSS 代码如下 frame border radiu
  • HTML 验证器“自关闭语法”和“非空”错误

    我在使用 W3 Validator 验证代码时遇到问题 我是网页设计新手 有人能帮我吗 验证器声明 错误 在非 void HTML 元素上使用了自闭合语法 gt 忽略斜杠并将其视为开始标记 从第 15 行第 1 列开始 至第 15 行 第
  • Excel 日期到字符串的转换

    在 Excel 工作表的单元格中 我有一个日期值 例如 01 01 2010 14 30 00 我想将该日期转换为文本 并且还希望文本看起来与日期完全相同 所以日期值为01 01 2010 14 30 00应该看起来像01 01 2010
  • 将html中的特定内容替换为JS

    我有一个 html 文件和 JS 文件 所以我的 html 文件中有 svg 的语法
  • 身份验证时 Firebase .getUID NullPointerException

    我注册时会将数据添加到数据库中 但是我得到了 Java lang NullPointerException 尝试在空对象引用上调用虚拟方法 java lang String com google firebase auth Firebase
  • 如何在vaadin中播放视频?

    我使用了两个视频组件 Video video new Video 并嵌入 Embedded embed new Embedded my video new ExternalResource yyy xxx mp4 embed setMime
  • 连接每第 n 行

    我在矩阵中得到了一个数据集 如下所示 从 Excel 导入 matrix Cat1 1 2 3 4 Cat2 9 10 11 12 Cat3 17 18 19 20 Cat1 5 6 7 8 Cat2 13 14 15 16 Cat3 21
  • java项目中在哪里编写和存储mongoDB的map/reduce函数

    对于在 Java 项目中的何处以及如何编写和存储 javascript map reduce 函数以便与 MongoDB 数据库一起使用 有人有任何建议或知道任何最佳实践吗 我正在寻找的标准是 在编写和编辑函数时 我希望受益于 IDE 提供