小编Pra*_*ndo的帖子

@NotNull 注释不会转换为模式生成中的非空约束

根据 hibernate 验证器参考文档 - 第11.1.1 节。数据库模式级验证https://docs.jboss.org/hibernate/stable/validator/reference/en-US/html_single/#validator-checkconstraints-db),

Hibernate ORM 开箱即用,会将您为实体定义的约束转换为映射元数据。例如,如果实体的属性被注释为 @NotNull,则其列将在 Hibernate ORM 生成的 DDL 架构中声明为非 null。

但是当我用 @NotNull 注释我的字段时,我不会自动获得架构级别约束。

我尝试设置Environment.HBM2DDL_AUTOupdatecreate但两者都无法生成数据库约束。

尽管休眠状态默认设置为hibernate.validator.apply_to_ddltrue我什至尝试手动设置 -

settings.put("hibernate.validator.apply_to_ddl", true);
Run Code Online (Sandbox Code Playgroud)

但这些选项似乎都不适合我。

我的域类

package com.praveen.domain;

import javax.persistence.Entity;
import javax.validation.constraints.NotNull;

import lombok.Data;

@Entity
@Data
public class Stakeholder extends MyPersistent {

    @NotNull
    private String clientCode;

    @NotNull
    private String gender;
}
Run Code Online (Sandbox Code Playgroud)

我的持久类

package com.praveen.domain;

import java.io.Serializable;

import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.MappedSuperclass;

import lombok.Getter; …
Run Code Online (Sandbox Code Playgroud)

java hibernate hibernate-validator mysql-5.5 hibernate-5.x

5
推荐指数
1
解决办法
1935
查看次数

如何使用java.util.Formatter将double格式化为千位分隔和2位小数

我想将double值格式化为具有的样式

  1. 货币格式符号
  2. 值四舍五入到小数点后两位
  3. 最终值千分隔符

特别是使用java.util.Formatter类

示例: -

double amount = 5896324555.59235328;
String finalAmount = "";
// Some coding
System.out.println("Amount is - " + finalAmount);
Run Code Online (Sandbox Code Playgroud)

应该像: - Amount is - $ 5,896,324,555.60

我搜索过,但是我无法理解Oracle文档或其他教程,我发现这个链接非常接近我的要求,但它不是用Java - 如何将双值格式化为字符串,后面有2个小数位和点成千上万的分隔符?

java

0
推荐指数
1
解决办法
3761
查看次数