zoukankan      html  css  js  c++  java
  • insertable = false, updatable = false的使用

    转自:insertable = false, updatable = false的使用

    当使用JPA配置实体时,如果有两个属性(一个是一般属性,一个是多对一的属性)映射到数据库的同一列,就会报错。

    这时,在多对一的@JoinColumn注解中添加insertable = false, updatable = false就能解决。

    例如:

    /** 
     * 用户类 
     */  
    @Entity  
    @Table(name = "TBL_SYS_USER")  
    public class SysUser{  
        @Id  
        @GeneratedValue(generator = "system-uuid")  
        @GenericGenerator(name = "system-uuid", strategy = "uuid")  
        @Column(name = "USER_ID", unique = true, length = 40)  
        @CsvColumn(imported=false)  
        private String id;                  //用户ID  
      
        @Column(name = "USER_CODE", nullable = false, length = 40)  
        private String userCode;            //用户账号  
      
        @CsvColumn(desc="用户姓名", required= true )  
        @Column(name = "USER_NAME", length = 60)  
        private String userName;            //用户姓名  
      
        @Column(name = "DEPT_ID", length = 40)  
        private String deptId;              //部门ID(IS_ORG=0的)  
      
        @ManyToOne  
        @JoinColumn(name = "DEPT_ID", insertable = false, updatable = false, nullable=true)  
        private SysOrg dept;                //部门对象  
      
    }  

    我们可以看到,deptId和dept都映射到数据库里面的DEPT_ID字段,但是加上了insertable = false, updatable = false后,在保存数据时,dept不会被保存到数据库。

  • 相关阅读:
    vue--一些预设属性
    vue--vux框架的使用
    vue--vConsole
    vue--音乐播放器
    vue--使用vue-cli构建项目
    vue--实例化对象
    vue--数据显示模版上
    CSS--交互效果
    Git SSH公钥配置
    gradle配置国内镜像
  • 原文地址:https://www.cnblogs.com/drizzlewithwind/p/6221284.html
Copyright © 2011-2022 走看看