当前位置: 首页 > 知识库问答 >
问题:

如何在@query中使用类中的值?

郤望
2023-03-14

嗨,

我正在创建Rest API,这是我的问题。例如,我有这样的@Query。

@Query(value = "INSERT INTO table(customer, date_of_loading, date_of_unloading")
        "VALUES ('BrandA', '02.02.2022', '03.02.2022',", nativeQuery = true)

void createNewOrder(OrderDto orderId);

如何从我的类OrderDto中获取值并将其发送到@查询?

我还有其他问题,例如,我只发送一个单词,在这里我只需要使用: orderId来使用incoming String,但不知道如何将其用于incoming类。有什么想法吗?

@Query(value = "INSERT INTO table (customer) VALUES (:orderId) ", nativeQuery = true)

void createNewUser(@Param("orderId") String orderId);

我只想用同样的例子,但是从OrderDto到userDto这样的类。getCustomer

我知道我可以手动将其全部1by1发送到这样的函数

  void createNewUser(@Param("orderId") String orderId, @Param("test") String test, @Param("customer") String customer, );

然后通过:orderId、:test、:customer等使用它,但需要在代码中花费大量时间和空间:)

有什么想法吗:D???

@Query(
    value= "SELECT * FROM `users` WHERE `name`=?1 AND `age`=?2",
    nativeQuery = true
)
UserEntity findUser(String userName, Integer userAge);

你能以某种方式使用这个一样:

@Query(
    value= "SELECT * FROM `users` WHERE `name`=user.name AND `age`=user.age",
    nativeQuery = true
)
UserEntity findUser(User user);

共有1个答案

薛宜
2023-03-14

据我所知,您确实已经将它们作为参数传播到了函数中,但为什么不使用诸如save()之类的JPA方法来实现它,而不是自定义查询呢。但是你可以在这里看看这个实现

https://www.baeldung.com/spring-data-jpa-query

 类似资料:
  • 我正在使用我的房间持久性库来访问数据库数据。 在我的道课上,我把查询写成 这很好。但是,如果我必须将状态与某个常量值进行比较,例如状态!=Constant.STATUS_FAILED 这里,val STATUS_FAILED=5在常量文件中定义。 我如何在查询中使用它。我知道我可以在allContacts方法中将它作为参数传递,并使用like status!= :stts。但是我不想那样。有没有什

  • 我想在一个JpaRepository中使用一个命名查询。但它不起作用: 结果: 更新: 仍然相同的例外:

  • 问题内容: 如何使用spring-data-elasticsearch使用批注进行@Query(value =“ {” query“:”“}”)的聚集? 问题答案: 您不能使用仅用于发送查询而不是聚合的注释的注释。 使用Spring Data Elasticsearch实现此目的的唯一方法是利用和:

  • 我正在学习FastAPI的教程,到目前为止,我对何时/何地在FastAPI中使用Body/Path/Query/Field有疑问?因为它们似乎都以相同的方式工作,所以本教程对它们的区别使用了模糊的解释,还是我遗漏了什么? 额外问题:真的有用吗?我在教程的示例代码中设置/省略了它,但我看不出有什么区别。

  • 问题内容: 我已经用C ++实现了一个类。我想将其与Python一起使用。 请提出逐步方法,并详细说明每个步骤。 这样的东西 现在,在Python中 请提出建议。我该怎么办?注意:我想知道手动的方法。我不希望任何第三方库依赖。 问题答案: 查看Boost.Python。这是一个用C ++编写python模块的库。 还要研究SWIG,它也可以处理其他脚本语言的模块。我过去曾使用它来为我的课程编写模块

  • 我有以下三个类:我尝试制作1和2的例程,并使用tjava调用主类和来自1和2的方法,但我无法获取这些方法。 1) 我在Talend中为上面的代码(1)和2)做了例程,然后用tjava调用方法,但是不能这样做。我还尝试对所有的tjava都使用,并且在每个tjava上都做了onSubjob ok。我如何在Talend中调用这些类并调用方法呢?