返回顶部
首页 > 资讯 > 精选 >JPA如何设置默认字段及其长度
  • 719
分享到

JPA如何设置默认字段及其长度

2023-06-25 21:06:06 719人浏览 安东尼
摘要

本篇文章为大家展示了JPA如何设置默认字段及其长度,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。使用jpa去生成对应的值的长度和默认值是如何设置的呢@Target({ElementType.METH

本篇文章为大家展示了JPA如何设置默认字段及其长度,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

使用jpa去生成对应的值的长度和默认值是如何设置的呢

@Target({ElementType.METHOD, ElementType.FIELD})@Retention(RetentionPolicy.RUNTIME)public @interface Column {    String name() default "";    boolean unique() default false;    boolean nullable() default true;    boolean insertable() default true;    boolean updatable() default true;    String columnDefinition() default "";    String table() default "";    int length() default 255;    int precision() default 0;    int scale() default 0;}
  • name 属性用来设置字段的名字

  • unique用于设置这个字段是否是是唯一的

  • insertable和updatable、table都是和表更新相关的操作,

  • length 指定长度,默认是255

  • precision 数据长度

  • scale小数的长度

  • columnDefinition 指定这一列的信息

String

string是最常见的字段,

@Column(name = “name”)private String name;

sql中 name varchar(255)

生成的字段长度为255,即如果不设置长度的话默认的长度就是255个。

@Column(name = “name”,length = 50)private String name;
name varchar(50)

JPA如何设置默认字段及其长度

@Column(name = “name”,columnDefinition=“varchar(11) COMMENT ‘用户姓名'”)private String name;
name varchar(11) COMMENT ‘用户姓名'

JPA如何设置默认字段及其长度

这里不仅指定了长度,还给列了一个注释,便于查看

@Column(name = “name”,columnDefinition=“default ‘12345'”)private String name;

如果我们制定默认值,这样SQL语句就会报错

create table user (id bigint not null, age integer, birth datetime(6), name default ‘12345', sex bit, primary key (id)) engine=InnoDB

如果我们制定长度呢

@Column(name = “name”,columnDefinition=“default ‘12345'”,length = 25)private String name;

运行的DDL语句依然无法创建出表

create table user (id bigint not null, age integer, birth datetime(6), name default ‘12345', sex bit, primary key (id)) engine=InnoDB

如何给String字段指定默认值呢

所以如果指定columnDefinition这个属性会覆盖原来的列注解的长度,而且在其注解的中必须制定列的类型

       String columnDefinition() default "";
@Column(name = “name”,columnDefinition=" varchar(11) default ‘12345'",length = 25)private String name;create table user (id bigint not null, age integer, birth datetime(6), name varchar(11) default ‘12345', sex bit, primary key (id)) engine=InnoDB

columnDefinition 会将其中的值作为列名之后,如果在这里设置默认值,必须保证直接加在列名之后执行不会出错。

JPA如何设置默认字段及其长度

定义 Integer 和 Long 有区别吗

JPA如何设置默认字段及其长度

JPA如何设置默认字段及其长度

Long的默认长度为20,Integer的默认长度为11

定义Integer和int有区别吗

JPA如何设置默认字段及其长度

区别是int如果你不给他设置就会默认为0

boolean和Boolean也是一样的。

boolean类型

默认长度为1

@Column(name = “sex”)private Boolean sex;

JPA如何设置默认字段及其长度

@Column(name = “sex”)private boolean sex;

JPA如何设置默认字段及其长度

二者没有什么区别,如果我们将boolean设置默认值并且设置长度会咋样呢?

@Column(name = “sex”,length = 50)private boolean sex;

生成的DDL语句中并没有长度的属性。所以在boolean类型中设置长度属性是没有作用的

create table user (id bigint not null, age integer, birth datetime(6), name varchar(255), sex bit, primary key (id)) engine=InnoDB

指定boolean类型的默认值呢

@Column(name = “sex”,columnDefinition = “bit(1) default 1”)private boolean sex;

JPA如何设置默认字段及其长度

有注意,如果指定默认值为1,即是true,属性如果不指定,boolean的默认值就是false,所以会将false设置到对应的数据中,如果指定Boolean呢

如果指定Boolean的话,没有设置默认就是null,就会将空更新到数据库中,最好用的方法还是在java类中设置默认值。

日期

默认的日期格式不具有可读性

@Column(name = "birth")private Date birth;

JPA如何设置默认字段及其长度

使用@Temporal来制定格式

@Temporal(TemporalType.DATE)@Column(name = "birth")private Date birth;

JPA如何设置默认字段及其长度

@Temporal有三个值

  • DATE 只有日期

  • TIME 只有时间 时分秒

  • TIMESTAMP 日期和时间都有

浮点数格式的设置

@Column(name = “age”,scale = 2)private int age;

age integer,属性为scale = 2没有作用

@Column(name = “age”,scale = 2)private float age;

JPA如何设置默认字段及其长度

@Column(name = “age”,precision = 5,scale = 2)private float age;

还是没有用,指定数据格式为double,依然没有用

@Column(name = “age”,columnDefinition = “decimal(5,2)”)private double age;

JPA如何设置默认字段及其长度

大文本

   @Basic(fetch = FetchType.LAZY)@Type(type = "text")@Lob@Column(name = "remark")private String remark;

@Lob 指定该文本为长文本

@Basic(fetch = FetchType.LAZY) 长文本缓加载,便于数据的读取。 

上述内容就是JPA如何设置默认字段及其长度,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网精选频道。

--结束END--

本文标题: JPA如何设置默认字段及其长度

本文链接: https://lsjlt.com/news/306335.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • JPA如何设置默认字段及其长度
    本篇文章为大家展示了JPA如何设置默认字段及其长度,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。使用jpa去生成对应的值的长度和默认值是如何设置的呢@Target({ElementType.METH...
    99+
    2023-06-25
  • JPA设置默认字段及其长度详解
    目录String定义 Integer 和 Long 有区别吗定义Integer和int有区别吗boolean类型日期浮点数格式的设置大文本使用jpa去生成对应的值的长度和默认值是如何...
    99+
    2024-04-02
  • access字段长度如何设置
    access字段的长度可以根据需要进行设置,通常是根据存储的数据类型和存储的数据量来确定。如果存储的是文本类型的数据,可以根据存储的...
    99+
    2023-09-20
    access
  • mysql如何设置字段默认值
    在MySQL中,可以使用DEFAULT关键字来设置字段的默认值。在创建表时,可以通过DEFAULT关键字为字段指定默认值,例如: C...
    99+
    2024-04-09
    mysql
  • MySQL 字段默认值该如何设置
    前言:  在 MySQL 中,我们可以为表字段设置默认值,在表中插入一条新记录时,如果没有为某个字段赋值,系统就会自动为这个字段插入默认值。关于默认值,有些知识还是需要了解的,本篇文章我们一起来学习下字段默...
    99+
    2022-05-17
    MySQL 字段 MySQL 字段默认值 MySQL 字段默认值设置
  • access如何设置字段的默认值
    在Access中,可以通过设置字段的默认值来指定该字段在每次插入新记录时的默认值。以下是在Access中设置字段的默认值的步骤:1....
    99+
    2023-10-11
    access
  • 如何设置MySQL的字段默认值
    本篇文章给大家分享的是有关如何设置MySQL的字段默认值,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。 1.默认值相关操作我们可以用 DEFAULT 关键字来定义默认...
    99+
    2023-06-06
  • mysql如何给字段设置默认值
    在创建表时,可以在字段定义中使用DEFAULT关键字来设置默认值。例如: CREATE TABLE table_name ( ...
    99+
    2024-04-09
    mysql
  • Spring Data JPA 设置字段默认值方式是什么
    本篇文章为大家展示了Spring Data JPA 设置字段默认值方式是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Spring Data JPA设置字段默认值在...
    99+
    2023-06-21
  • MySQL中如何为字段设置默认值?
    在MySQL中,我们可以为表的字段设置默认值,以确保在插入新记录时,如果没有为该字段指定值,将使用默认值。这在许多情况下都非常有用,特别是当我们希望在插入数据时自动填充某些字段,或者当我们想要为字段提...
    99+
    2023-10-23
    mysql 数据库
  • mysql字段默认值如何设置比较好
    设置MySQL字段的默认值要根据具体的业务需求和数据类型来决定。以下是设置MySQL字段默认值的几个常见做法: 对于数值型字段,...
    99+
    2023-10-23
    mysql
  • sqlserver怎么设置字段默认值
    在SQL Server中,可以使用`DEFAULT`关键字来设置字段的默认值。例如,假设我们有一个名为`users`的表,其中有一个...
    99+
    2023-09-16
    sqlserver
  • navicat怎么设置字段默认值
    要设置字段的默认值,可以按照以下步骤在Navicat中进行操作:1. 在Navicat中打开数据库连接,并选择要设置默认值的表。2....
    99+
    2023-10-11
    navicat
  • SpringDataJPA设置字段默认值方式
    目录Spring Data JPA设置字段默认值Spring Data JPA设置字段默认值失败Spring Data JPA设置字段默认值 在Column注解中写入以下两个属性,为...
    99+
    2024-04-02
  • sqlserver字段怎么设置默认值
    在SQL Server中,可以使用DEFAULT约束来设置默认值。以下是设置默认值的步骤: 1、在创建表时,可以在字段定义中使用DE...
    99+
    2024-04-09
    sqlserver
  • sql字段长度怎么设置
    sql 字段长度设置决定了字段容纳的字符数量,影响数据库性能和存储效率。设置时需考虑数据类型、预期数据、存储空间和索引性能。不同数据库系统有不同语法,如 mysql 使用 int(长度)...
    99+
    2024-05-30
    mysql oracle
  • MySQL表字段时间设置默认值
    应用场景 在数据表中,要记录的每条数据是什么时候创建的,不需要应用程序去特意记录,而是由数据库获取当前时间自动记录创建时间。 在数据库中,要记录每条数据是什么时候修改的,不需要应用程序去特意记录,而...
    99+
    2022-05-22
    MySQL 字段时间默认值 MySQL 字段默认值
  • MySQL中怎么设置字段默认值
    本篇文章为大家展示了MySQL中怎么设置字段默认值,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1.默认值相关操作我们可以用 DEFAULT 关键字来定义默认值,默...
    99+
    2024-04-02
  • mysql设置某字段默认值的方法
    这篇文章将为大家详细讲解有关mysql设置某字段默认值的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。mysql设置某字段默认值的方法:1、加字段和设置默认值;2、通...
    99+
    2024-04-02
  • mysql 将date字段默认值设置为CURRENT_DATE
    我们是否可以在mysql中,将Date字段的默认值设置为CURRENT_DATE(当前日期)? 答案是8.0之前不可以,8.0.13之后可以。 比如在5.7版本中使用如下sql创建表,将会提示语法错误: CREATE TABLE `t_o...
    99+
    2023-08-31
    mysql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作