Java 为什么mybatis更新和删除不起作用?
我正在使用myBatis开发一个微服务,但是UPDATE和DELETE语句在其中不起作用。 即使是简单的update语句在我执行时也不会执行,只是卡住了,没有响应Java 为什么mybatis更新和删除不起作用?,java,spring-boot,mybatis,spring-mybatis,Java,Spring Boot,Mybatis,Spring Mybatis,我正在使用myBatis开发一个微服务,但是UPDATE和DELETE语句在其中不起作用。 即使是简单的update语句在我执行时也不会执行,只是卡住了,没有响应 <update id = "update" parameterType="map"> UPDATE TESTDB SET <foreach item = "entry" index = "key" separator = "," collec
<update id = "update" parameterType="map">
UPDATE TESTDB
SET
<foreach item = "entry" index = "key" separator = "," collection = "SET">
${key} = #{entry}
</foreach>
WHERE
<foreach item = "entry" index = "key" separator = "AND" collection = "WHERE">
${key} = #{entry}
</foreach>
</update>
我在日志中得到了正确的查询,但当我通过POSTMAN执行时,我得到了这些,
它显示它正在发送和加载,并没有执行,只是在发送,但没有响应
此问题仅在删除和更新查询rest正常工作时出现
谢谢@Smile
我知道它失败的原因。我已经创建了一个SqlSession,该会话正被所有操作使用,并且该会话将锁定我尝试更新或删除的行
解决方案:-
你能在更新片段中对查询进行硬编码吗?我已经尝试过简单的更新查询,但结果都是一样的,只是停留在更新和删除查询中,其余的都在工作fine@EshuYadav出现这种问题的一个常见原因是另一个会话锁定了行您正在尝试更新或删除。@EshuYadav当您从其他工具(如SQLDeveloper)执行更新语句时,更新语句是否有效?@Smile Yeah from SQLDeveloper这些更新查询执行得很好。您是否可以尝试在更新片段中对查询进行硬编码?我已经尝试过简单的更新查询,但结果相同,只是停留在更新和删除中删除查询rest正在工作fine@EshuYadav出现这种问题的一个常见原因是另一个会话锁定了您试图更新或删除的行。@EshuYadav当您从其他工具(如SQLDeveloper)执行时,update语句是否有效?@Smile yes from SQLDeveloper这些更新查询执行得很好。
{
"data":
[
{
"set":
[
{
"ID":"2",
"NAME":"abc",
"TYPE":"abc"
}
],
"where":
[
{
"NAME":"a",
"ID":"1"
}
]
}
]
}