目录

导读

是什么?

步骤

总结


导读

Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制。Java 语言中的类、方法、变量、参数和包等都可以被标注。和 Javadoc 不同,Java 标注可以通过反射获取标注内容。在编译器生成类文件时,标注可以被嵌入到字节码中。Java 虚拟机可以保留标注内容,在运行时可以获取到标注内容 。 当然它也支持自定义 Java 标注。

@Column标记表示所持久化属性所映射表中的字段


@Target(value={METHOD,FIELD})@Retention(value=RUNTIME)
public @interface Column
Specifies the mapped column for a persistent property or field. If no Column annotation is specified, the default values apply.Example 1:@Column(name="DESC", nullable=false, length=512)public String getDescription() { return description; }Example 2:@Column(name="DESC",columnDefinition="CLOB NOT NULL",table="EMP_DETAIL")@Lobpublic String getDescription() { return description; }Example 3:@Column(name="ORDER_COST", updatable=false, precision=12, scale=2)public BigDecimal getCost() { return cost; }

是什么?

@Target({METHOD, FIELD}) @Retention(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;
}

@Column属性详解:@Column注解一共有10个属性,这10个属性均为可选属性

name 
name属性定义了被标注字段在数据库表中所对应字段的名称;

unique 
unique属性表示该字段是否为唯一标识,默认为false。如果表中有一个字段需要唯一标识,则既可以使用该标记,也可以使用@Table标记中的@UniqueConstraint。

nullable 
nullable属性表示该字段是否可以为null值,默认为true。

insertable 
insertable属性表示在使用“INSERT”脚本插入数据时,是否需要插入该字段的值。

updatable 
updatable属性表示在使用“UPDATE”脚本插入数据时,是否需要更新该字段的值。insertable和updatable属性一般多用于只读的属性,例如主键和外键等。这些字段的值通常是自动生成的。

columnDefinition 
columnDefinition属性表示创建表时,该字段创建的SQL语句,一般用于通过Entity生成表定义时使用。(也就是说,如果DB中表已经建好,该属性没有必要使用。)

table 
table属性定义了包含当前字段的表名。

length 
length属性表示字段的长度,当字段的类型为varchar时,该属性才有效,默认为255个字符。

precision和scale 
precision属性和scale属性表示精度,当字段类型为double时,precision表示数值的总长度,scale表示小数点所占的位数。

@Column可以标注在属性前或getter方法前;


总结

以上就是今天要讲的内容,本文系统介绍了@Column属性注解

参考文章:http://docs.oracle.com/javaee/5/api/javax/persistence/Column.html

@Column注解属性详解相关推荐

  1. java column_@Column注解属性详解

    name 定义了被标注字段在数据库表中所对应字段的名称: unique 表示该字段是否为唯一标识,默认为false.如果表中有一个字段需要唯一标识,则既可以使用该标记,也可以使用@Table标记中的@ ...

  2. spring MVC请求处理类注解属性详解

    spring MVC请求处理类注解属性详解

  3. @Column注解及属性详解

    @Column注解 用来标识实体类中属性与数据表中字段的对应关系 (1)源码: /** Copyright (c) 2008, 2009, 2011 Oracle, Inc. All rights r ...

  4. spring之旅第四篇-注解配置详解

    spring之旅第四篇-注解配置详解 一.引言 最近因为找工作,导致很长时间没有更新,找工作的时候你会明白浪费的时间后面都是要还的,现在的每一点努力,将来也会给你回报的,但行好事,莫问前程!努力总不会 ...

  5. Java注解(Annotation)详解

    转: Java注解(Annotation)详解 幻海流心 2018.05.23 15:20 字数 1775 阅读 380评论 0喜欢 1 Java注解(Annotation)详解 1.Annotati ...

  6. Spring 3.0 注解注入详解

    Spring 3.0 注解注入详解 2011-04-15 09:44 17ZOUGUO ITEYE博客 我要评论(1) 字号:T | T AD: 一.各种注解方式 1.@Autowired注解(不推荐 ...

  7. Spring高级之注解@Bean详解(超详细)

    定义/作用 当我们要使用第三方类实现组件注册到IOC容器时,例如第三方数据库连接池等,我们无法修改他们的代码,所以我们不能通过@Component及其衍生注解来进行组件定义.这是,可以通过@Bean注 ...

  8. Spring高级之注解@ComponentScan详解(超详细)

    定义/作用 @ComponentScan注解用于实现spring主键的注解扫描,会扫描特定包内的类上的注解. 源码(对属性进行一些简介,会在后文中详细讲解每个属性): @Retention(Reten ...

  9. Spring 注解@Value详解

    一.spring(基础10) 注解@Value详解[1] 一 配置方式 @value需要参数,这里参数可以是两种形式: [html] view plaincopy @Value("#{con ...

最新文章

  1. Splunk学习与实践
  2. lsqcurvefit拟合结果为复数_非线性拟合怎么转化为线性拟合?
  3. C++多个文本读取问题
  4. 每日一题:leetcode191.位1的个数
  5. mysql 5.6.4以上版本innodb支持全文索引的测试
  6. carsim中质心加速度_振动CAE分析在空调压缩机支架设计中的应用
  7. 一分钟获得幸福的99个方式
  8. 二分查找算法的C/C++实现
  9. Atitit 人工智能体系树完整版 Atitit 人工智能体系培训列表 目录 1. 1.NLP自然语言处理文本处理 1 2. 知识图谱 知识处理系统 2 3. 2.机器视觉 图像处理 2 4.
  10. nvme固态硬盘开机慢_win10 Samsung NVMe固态硬盘测速很慢的解决方法
  11. 关于下载Keil5无法打开keil4文件的问题解决方案
  12. python身份证号码共18位_涨姿势:用Python完成15位18位身份证的互转
  13. 【错误记录】Ubuntu 编译 ffmpeg 报错 ( nasm/yasm not found or too old. Use --disable-x86asm for a crippled bu )
  14. JS基础——图片切换的综合实例
  15. 蜕变测试(metamorphic testing)经典论文阅读 Compiler Validation via Equivalence Modulo Inputs
  16. 500台以上的大型网吧设计解决方案(转)
  17. python爬虫初试-下载LOL全英雄皮肤
  18. 纳瓦尔宝典 健康、爱和使命,以此为序,其他的都不重要 不把自己太当回事
  19. hive 读取 map的value
  20. Xcode 工程清理瘦身

热门文章

  1. Flutter学习总结(二)开发语言Dart学习
  2. 这是一个新的开始 复习python的基础知识 fighting!
  3. 美国计算机专业排名2019,美国大学计算机专业排名2019情况如何?
  4. 拉马努金公式计算圆周率 Python 3.7
  5. mac的python换字体_matplotlib在MAC系统下中文字体显示问题
  6. java文本阅读器代码_java项目—文本阅读器
  7. 睡觉睡到自然醒隐私协议
  8. Linux 内核观测技术BPF
  9. java做漂亮的游戏界面_java对打小游戏界面漂亮
  10. 制作SD启动卡(含FAT32和EXT4两个分区)