问题标签 [siena]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1519 浏览

java - 玩!+ 锡耶纳 + GAE + JUnit

我正在尝试在 Play 上启动和运行一些基本的单元测试!使用带有 GAE 作为预期部署目标的 Siena 持久性库的框架。

我已正确配置项目并且可以将应用程序部署到 GAE。我创建了一个基本的域对象:

和一个基本的单元测试:

我在 Play 中明白这一点!1.0.3,尚不存在对 Siena 的 Fixtures 支持,这应该在 1.1 中修复,但与此同时,我应该使用什么来代替 Fixtures.deleteAll() 在每次测试之前清除测试数据库?

现在我的第二个断言失败了,因为数据库保留了以前插入的记录。

0 投票
2 回答
7984 浏览

java - 如何使用 @OneToMany 集合进行分页

假设我有一个 Post 实体和一个 Comment 实体以及一对多关系:

我怎样才能实现这样的分页:

是否可以在 JPA 之上使用 @OneToMany 集合来模拟动态分页,还是我们必须完全重写 JPA 的关联机制?(例如,创建一个可以管理分页、排序和搜索的 PersistentList 集合类型)。

PS:我最近发现了Play!框架在 JPA 之上使用了一个非常有趣的库:Siena。Siena 非常易于使用,并且是 JPA/Hibernate 之上的一个很好的抽象。但我找不到如何使用它的关联进行分页。

更新:

Play 框架有一个类似于 Django 的查询语法:

在哪里

将返回一个 JPAQuery 对象,这是 Play 中自定义的查询类型。

但与相关的集合,例如:

只会返回一个不支持分页或其他查询的列表。

我想知道如何扩展它,以便

还将返回一个 JPAQuery 对象或类似对象,然后您可以在“查询”集合上进行查询:

或插入新评论而不实际获取任何评论:

我的第一个想法是,我们可以创建一个 List 的子类,然后 Post 类将变为:

并且 QueryList 将具有间接到 JPAQuery 的 fetch()、from() 方法。

但我不知道 Hibernate/JPA 是否会认识到这一点,或者会干扰它。

0 投票
5 回答
6605 浏览

java - Ebean或Siena有多成熟?

上次我听到很多关于 Hibernate 的抱怨。事实上,我对 Hibernate 也有一些痛苦的经历。所以我读到了EbeanSiena

两者都有有趣的方法。不幸的是,数据库访问层很容易编写,但是如果您的项目增长并且您必须处理出色的数据库表,您就会知道它们是否好用。所以评估这样的工具真的很困难。Hibernate 是众所周知的,你可以确定你可以用它解决你的问题。有时你需要学习很多东西,但你可以解决它。

Ebean 怎么样?有现实世界的应用吗?支持哪些数据库?它可靠吗?

在搜索了更多之后,我发现有更多的 ORM 框架,那么至少有一个可靠的吗?

0 投票
1 回答
208 浏览

google-app-engine - Play Gae 持久性不适用于 Set

这是我的用户类

当我创建它并将其插入数据库时​​,它似乎工作正常。但是当我使用 findByEmail(email) 从数据库中调用它时。它使用所有集合(如 idEvents)空值加载用户。

我正在使用带有 siena 和 gae 模块的 play 1.1。

知道什么可能是错的吗?我尝试将集合声明为公共并使用列表而不是集合,但没有任何效果。

谢谢

0 投票
1 回答
569 浏览

java - 与siena一起玩的多重关系

我正在创建一个具有 2 个一对多关系的实体。一个事件有一个用户字段和一个地点字段。我正在尝试使用自动查询,但此代码始终返回一个空列表。

事件类是

如果我像这样更改 Event 类

上面的相同代码返回一个包含一个事件的列表(我所期望的)

编辑:这是 Place 类

这是用户类

MyModel 是 siena.Model 的超类,但我知道它没有做任何有用的事情,所以我将它改回 Model。我在 play 1.1 上使用 play-siena 1.5

0 投票
1 回答
204 浏览

sql-order-by - 可以在siena中按计算字段排序吗?

我正在尝试获取在 Play 中计算的字段上排序的查询返回。这是我正在使用的查询。

其中点定义为

并且由于这个吸气剂而被检索

当我这样做时,吸气剂被正确调用

我觉得我在锡耶纳假装太多了,但我希望它能够工作(或一些类似的代码)。目前它只是跳过订单条件。在任何其他字段上排序都可以正常工作。

0 投票
1 回答
90 浏览

java - 无法从siena中另一个对象中的对象获取字符串字段

我无法获取位于另一个对象内部的对象中的字段。我可以得到一些领域,但其他人没有。

这是我为重现此错误而创建的测试。

它在线上失败

这不是一个交易破坏者,因为我仍然可以到达该字段对数据库进行其他调用,但我可以访问某些字段而其他字段不能访问似乎很奇怪

在 MyUser 中,我尝试使用和不使用以下注释来声明“nome”字段

0 投票
1 回答
814 浏览

search - siena 查询搜索如何工作?

我正在寻找有关如何在 siena 中进行查询的文档,该查询返回包含字符串的所有元素。我尝试了类似的东西

但它返回所有元素,没有过滤。

0 投票
3 回答
2165 浏览

scala - 如何定义该方法的结果类型?

在以下情况下如何定义方法返回类型:

工作代码

非工作代码:

引发的错误是:

递归方法getModel需要结果类型

0 投票
1 回答
446 浏览

google-app-engine - 无法为 play framework 1.2.2 配置 crudsiena 模块

我正在尝试在 Play Framework(1.2.2) + siena (2.0.2) + crudsiena(2.0.1) + gae(1.4) 上创建基本应用程序。所有这些都是我从 play 的依赖管理系统中获得的。我正在跟踪文档中的示例,但遇到了一个奇怪的错误:

未找到 els.list 操作未找到

并且稍后在注册的路线中使用相同的“吃掉”类名:

获取/管理员/?其他索引

获取 /admin/mymodels els.list

获取 /admin/mymodels/new els.blank

获取 /admin/mymodels/{id} els.show

堆栈跟踪非常严格:

我的文件看起来像:

应用程序/模型/MyModels.java:

应用程序/模型/MyModel.java:

+ 路由设置为 /admin 模块:crudsiena + dependencies.yml 添加了关于 gae、siena 和 crudsiena 的行

其他文件保持不变。

有人知道我在做什么错吗?

谢谢指教。