【问题标题】:How to call custom insert Query using JPA in Spring Boot如何在 Spring Boot 中使用 JPA 调用自定义插入查询
【发布时间】:2020-04-14 09:58:06
【问题描述】:

我正在尝试在 Spring Boot 中使用 JPA 调用自定义插入查询。

@Repository
public interface eosRepo extends JpaRepository<EosthirdpartylabelsRequest, Long> {
    @Modifying
    @Query(
      value = 
        "INSERT INTO public.documents_zpl(\\r\\n\" +\r\n" + 
        "                 \"    loc_id, order_nbr, sub_order_nbr, carton_id, doc_payload, dt_ent, tm_ent, program_ent, dt_chg, tm_chg, program_chg)\\r\\n\"\r\n" + 
        "                 + \"  VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?",
         nativeQuery = true)
        void insertData(Integer locID, Integer OrderNum,Integer SubOrderNum,Integer CartonId,String CarrierLabel);
      }

如何在 Controller 中调用此查询。

【问题讨论】:

  • 你有什么问题?你可以调用 insertData
  • 你忘了把)放在?,?,?之后
  • @AbinashGhosh:感谢您编辑问题。如果可以的话,有几个风格提示:(1)如果作者有添加“please-help-me”乞求短语的习惯,请删除它们 - 这是多余的,这里首选技术写作; (2) 不需要把整个句子加粗,也不会让事情变得更容易阅读。如果有的话,非常谨慎地应用粗体格式。

标签: spring postgresql spring-boot


【解决方案1】:

第一次使用:

@Autowired
eosRepo eosRepo;

在您的控制器中,然后调用insertData

【讨论】:

    【解决方案2】:

    首先在控制器中执行此操作

    @Autowired
    private eosRepo object_name;
    

    然后你就可以调用这个方法了 object_name.insertData

    然后在你忘记的查询中加上')'。

    【讨论】:

      【解决方案3】:
      • " VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?", 你忘了给 ')' 并且还从控制器使用调用 repo
      @Autowired
      private eosRepo theEosRepo;
      

      【讨论】:

        猜你喜欢
        • 2019-02-16
        • 2019-09-28
        • 2019-12-19
        • 2017-07-20
        • 2020-07-05
        • 2019-06-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多