问题标签 [micronaut-data]
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.
hibernate - 运行 micronaut 1.3.3 尝试创建简单的应用程序得到休眠错误
我不小心把 hbm2ddl.auto 设置为 true。现在我无法摆脱它。我更改了 application.properties 文件中的属性,但没有运气。
java - 在 MicronautProject 中,使用休眠规范会抛出异常:Could not gain transaction-synchronized Session for current thread
我正在研究微航。当我在 micronaut 项目中使用休眠时。一切正常。我在 docs.micronaut.io 学习。但是我使用规范。抛出异常:
控制器
服务
存储库
实体
应用程序.xml
当我使用@Transactional 时它不起作用。我确定使用
也许我需要配置某事
micronaut - 使用 @JdbcRepository 注解关联 JDBC 数据源名称
在文档中,它指出,
@JdbcRepository 注释接受一个可选的字符串值,它表示多数据源场景中的连接或数据源的名称。默认情况下,Micronaut Data 将查找默认数据源。
但是,我在这个注释中看不到任何这样的值参数——只有方言。这是一个错误还是我错过了什么?
jpa - 尝试更新实体时获取“传递给持久化的分离实体”
我正在尝试更新一个对象。作为该过程的一部分,我从数据库中加载旧的并将其属性值“传输”到新对象。
但是,当我尝试保留新对象时,出现以下错误:
org.hibernate.PersistentObjectException: detached entity passed to persist: some.package.domain.Exercise
我的实体如下所示
我的持久化代码如下所示
如果我更改上面的代码以使用entityManager.merge(new)
一切正常。但我宁愿不必注入entityManager
.
关于如何使用 my 进行更新的任何线索repository
?
我试过增加cascade = [MERGE]
我的关系无济于事。
java - 如何在不受 Micronaut 管理的类中使用 bean?
我有一个带有created by
字段的实体,我需要使用AuthenticatedUserService
我创建的填充该字段。我需要在实体中注入此服务,以便我可以为该created by
字段生成值。
这是我的认证用户服务
我尝试使用@Transient
. 但这会为 AuthenticatedUserService 的实例返回 NullPointerException。实体看起来像这样。
有没有办法可以在 Micronaut 不管理的类中使用 AuthenticatedUserService?
我希望在 Micronaut中做这样的事情。
micronaut - Micronaut 数据的示例计数查询 @Query
有人可以举一个例子 countQuery 在使用 Micronaut 数据进行显式查询(@Query)时实现分页吗?https://micronaut-projects.github.io/micronaut-data/latest/guide/#explicitQueries没有示例
我必须进行如下查询
java - 多对多关系不返回嵌套 DTO 的 Micronaut 数据问题
我是 Micronaut 的新手,我一直在按照文档设置一个简单的 REST 应用程序。我想我会从一个简单的多对多关系开始。一切似乎都在工作。数据库表在启动时正确生成,并且端点正在返回可分页项,但不是嵌套的 Offer 列表,即使我包含了一个 Eager fetch 注释。我错过了什么?:-( 我不知道为什么。
这就是我所拥有的...
物品控制器:
物品实体:
项目 DTO:
报价实体:
提供 DTO:
项目存储库:
这是我得到的输出:
所以没有嵌套报价的迹象?
而已。当我使用 Micronaut 数据时,我认为它会起作用。显然我错过了一些东西。
提前感谢您提供任何有用的信息。
hikaricp - JDBC连接被取出并返回到JDBC连接池时如何拦截?
我试图弄清楚如何拦截从 JDBC 连接池中取出的 JDBC 连接的操作,并且就在它被返回之前。
java - 使用 Micronautor 或 Quarkus 的多数据源
我想从 Spring Boot 迁移到 Micronaut 或 Quarkus,但在 Spring Boot 中有一个特性是 AbstractRoutingDataSource,它在运行时更改数据源。micronaut 或 quarkus 中是否有任何类似或任何机制可以在运行时使用多个数据源?
Spring-boot 功能供参考https://medium.com/innomizetech/dynamic-multi-database-application-with-spring-boot-7c61a743e914
java - Micronaut 单元测试 - 如何设置默认模式
我尝试使用单元测试,但找不到default schema
在此示例应用程序中设置的方法。这是一个具有和的简单micronaut-data
示例。应用程序中使用 HSQL 数据库,Hikari db-poolmodel
repository
service
micronaut-jdbc-hikari
型号:Student.java
存储库:StudentRepository.java
服务:StudentService.java
单元测试:StudentServiceTest.java
问题: 有一些方法我可以找到我们可以设置默认模式的地方,但每个方法都有它的问题。
- 使用存储库注释
@Table(schema="TEST_SCHEMA", name="student")
<= Works。但不能硬编码模式名称 - 使用存储库注释
@Table(schema="#{property.file.schema_name}", name="student")
<= Spring 表达式,SpEL 不起作用
3.使用application-test.yml
文件:[没有效果,查询不选择模式名称]。
4.application-test.yml
在数据源中使用文件指定模式:但它不起作用,因为模式尚未创建,它将在测试类中创建。所以应用程序不会加载。
==================================================== ======= 暂时
的解决方法
使用同义词所以,当table_name
创建schema_name.table_name
没有模式的查询时,同义词将被替换。生成同义词,student
以便test_schema.student
正确翻译查询:
生成的查询 =>insert into student(id, name) values (?,?)
翻译的查询 =>insert into test_schema.student(id, name) values (?,?)
单元测试:StudentServiceTest.java