当前位置: 首页 > 面试题库 >

是否可以使用Java在Google App Engine上具有计算属性?

闻人栋
2023-03-14
问题内容

我有一个App
Engine应用程序,我想运行一个查询,该查询根据涉及两个属性的表达式对结果进行排序。到目前为止,我想到的最好的方法是创建一个存储该表达式结果的计算/计算属性。尽管我看到Python中的GAE提供了ComputedProperty,这似乎正是我想要的,但是我找不到Java中的等效项。

如果有帮助,我目前也在使用Objectify。

有任何想法吗?


问题答案:

用@OnSave方法计算值:

@Entity
public class YourEntity {
    @Id Long id;

    String foo;
    String bar;

    @Index String computed;

    @OnSave void computeComputed() {
        computed = // synthesize from foo and bar
    }
}

这就是NDB的ComputedProperty实际上所做的。Java确实没有匹配该语法的方法,而且我不确定NDB的方法是否更优雅。只需取消setter方法即可computed



 类似资料:
  • 问题内容: 。 我有下表: 我需要用计算所有行。可能与聚合有关吗? 现在,我按如下操作: 问题答案: 如果您只需要对1的行数进行计数,则可以执行以下操作: 如果要计算 每 行的行数,则需要使用:

  • 我要求Spring Boot应用程序加载一些理想地适合某种迷你电子表格的配置。几乎所有配置都由绑定到POJO的YAML属性文件组成,因此: 如果YAML被构造为这样的对象序列,则这可以很好地工作: 然而,从这个配置的用户/作者的角度来看,如果数据被组织成一个“电子表格”,那就太好了,因为他们将能够在彼此的上下文中看到各种值,而不是上面的大列表(大约有十几个条目)。类似这样的东西: 这是有效的YAM

  • 问题内容: TensorFlow图通常从输入到输出逐渐构建,然后执行。查看Python代码,操作的输入列表是不可变的,这表明不应修改输入。这是否意味着无法更新/修改现有图形? 问题答案: TensorFlow类是 仅追加的 数据结构,这意味着您可以在执行图的一部分后将节点添加到图,但不能删除或修改现有节点。由于TensorFlow在您调用时仅执行必要的子图,因此图中没有冗余节点(尽管它们将继续消耗

  • 问题内容: 我一直在使用TwitterBootstrap构建网站,其许多功能都依赖于将内容包装在中,即使它们只是执行Javascript也是如此。我在Bootstrap文档所建议的策略上遇到了问题,因此我试图寻找其他解决方案。 但是后来我尝试完全删除该属性。我一直在使用,并让Javascript处理其余部分。而且有效。 但是有件事告诉我我不应该这样做。对?我的意思是,从技术上讲,它应该是某事的链接

  • 问题内容: 是否可以在Java属性文件的下一行继续长字符串? 例如,以某种方式 当我得到它时,它将返回“ Hello World”? 问题答案: 行尾的反斜杠使您可以跨越多行,而以行开头的空格将被忽略: 在Java文档这样说: 逻辑行包含一个键元对的所有数据,这些数据可以通过用反斜杠字符将行终止符序列转义而分布在几条相邻的自然线上。

  • 在研究算法和数据结构时,我手动评估脚本的BigO复杂性。有没有一种方法,比如说任何Python IDE或包中的一个按钮,可以计算任何给定函数或程序的BigO? 更新: 假设我有 为什么我不能编写一个分析器,它会告诉我可以,你可以通过索引及其O(1)访问数组(列表),或者 好的,您进行了完全扫描,因此复杂性为O(n) 等等