zoukankan      html  css  js  c++  java
  • 【JavaWeb】 Not supported for DML operations

    在UPDATE时报错。

    解决:添加@Modifying注解。

    这里写图片描述

    百度到的总结:

    (1)可以通过自定义的 JPQL 完成 UPDATE 和 DELETE 操作。
    注意: JPQL 不支持使用 INSERT;
    (2)在 @Query 注解中编写 JPQL 语句, 但必须使用 @Modifying 进行修饰. 以通知   SpringData, 这是一个 UPDATE 或 DELETE 操作
    (3)UPDATE 或 DELETE 操作需要使用事务,此时需要定义 Service 层,在 Service 层的方法上添加事务操作;
    (4)默认情况下, SpringData 的每个方法上有事务, 但都是一个只读事务。
    他们不能完成修改操作。

    另外还发现一个问题:

    hibernate在映射数据库字段的时候不支持驼峰命名。

    如果数据库中存在userName这样的字段,hibernate在执行更新操作时,或将查询语言转化为user_name,会重新生成一个user_name字段,导致update无效。

  • 相关阅读:
    Python模块:struct
    Python模块:hashlib
    Python模块:collections
    python:爬虫
    Python:进程
    Python:线程
    Python:socket
    Welcome to ARFA's cnblog ! (Click me)
    骗访问量的机房人物列传by xMinh
    关于我
  • 原文地址:https://www.cnblogs.com/cnsec/p/13286723.html
Copyright © 2011-2022 走看看