Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Hibernate仅在基本类型上指定@Column注释一次_Java_Hibernate_Hibernate Mapping - Fatal编程技术网

Java Hibernate仅在基本类型上指定@Column注释一次

Java Hibernate仅在基本类型上指定@Column注释一次,java,hibernate,hibernate-mapping,Java,Hibernate,Hibernate Mapping,我的类中有很多Boolean字段,我将它们存储在TINYINT(1) 只放置一次注释并不是问题,但我有很多注释,这段代码看起来有点凌乱: @Column(nullable = false, columnDefinition = "TINYINT(1)") private Boolean isRescheduled; @Column(nullable = false, columnDefinition = "TINYINT(1)") private Boolean isCancelled; @Co

我的类中有很多
Boolean
字段,我将它们存储在
TINYINT(1)

只放置一次注释并不是问题,但我有很多注释,这段代码看起来有点凌乱:

@Column(nullable = false, columnDefinition = "TINYINT(1)")
private Boolean isRescheduled;
@Column(nullable = false, columnDefinition = "TINYINT(1)")
private Boolean isCancelled;
@Column(nullable = false, columnDefinition = "TINYINT(1)")
private Boolean isFullDay;

是否可以为
布尔值
指定
@Column
一次?

您需要自己的
方言

  • 扩展数据库的方言,例如
    mydialent扩展mysql5dialent

  • mydial
    的构造函数中重写类型

    registerColumnType(Types.BOOLEAN,“tinyint(1)”

  • hibernate.cfg.xml
    hibernate.properties
    中使用
    mydial


  • 您可以编写自己的注释,如
    @BooleanColumn
    ,它只是从@Column继承,但定义了您想要的默认值。@Korashen我想制作一个布尔包装器,并用
    @embeddeble
    对其进行注释。那么这个呢?您仍然需要为每个字段添加注释。因此,这两种方法都可以减少代码中的字符。两种方法都试一下,看看你最喜欢哪种解决方案,然后再去做。