字段名和属性名相同

Annotation:默认为@Basic

注意:如果在成员属性没有加入任何注解,则默认在前面加入了@Basic

Xml中不用写column

字段名和属性名不同

Annotation:使用@Column(name=”columnName”)进行注解

例如:

     * @Entity 表示下面的这个Teacher是一个实体类
* @Table 表示映射到数据表中的表名,其中的name参数表示"表名称"
* @Column 表示实体类成员属性映射数据表中的字段名,其中name参数指定一个新的字段名
* @Id 表示主键Id
*/
@Entity
@Table(name="_teacher")
public class Teacher { private int id;
private String name;
private String title; //设置主键使用@Id
@Id
public int getId() {
return id;
} @Column(name="_name")//字段名与属性不同时
public String getName() {
return name;
}
……
     Xml:

  1. <property name="name" column="_name"/>

不需要(持久化)psersistence的字段

就是不实体类的某个成员属性不需要存入数据库中

Annotation:使用@Transient 进行注解就可以了。

例如:

     @Transient
public String getTitle() {
return title;
}

Xml:不写(就是不需要对这个成员属性进行映射)

映射日期与时间类型,指定时间精度

Annotation:使用@Temporal(value=TemporalType)来注解表示日期和时间的注解

其中TemporalType有三个值:TemporalType.TIMESTAMP 表示yyyy-MM-dd HH:mm:ss

TemporalType.DATE     
表示yyyy-MM-dd

TemporalType.TIME     
表示HH:mm:ss

     @Temporal(value=TemporalType.DATE)
public Date getBirthDate() {
return birthDate;
}

注意:当使用注解时,属性为value时,则这个属性名可以省略,例如:@Temporal(TemporalType)

Xml:使用type属性指定hibernate类型

     <property name="birthDate" type="date"/> 

注意:hibernate日期时间类型有:date, time, timestamp,当然您也可以使用Java包装类

映射枚举类型

Annotation:使用@Enumerated(value=EnumType)来注解表示此成员属性为枚举映射到数据库

其中EnumType有二个值:①EnumType.STRING  表示直接将枚举名称存入数据库

②EnumType.ORDINAL 表示将枚举所对应的数值存入数据库

Xml:映射非常的麻烦,先要定义自定义类型,然后再使用这个定义的类型……

http://blog.sina.com.cn/s/blog_4979ec3e01016y0o.html

hibernate字段名和属性的更多相关文章

  1. 在oracle中操作表及字段注释,查询一个表的所有字段名以及属性和约束

    1.查询表注释 SELECT * FROM USER_TAB_COMMENTS; 三列:TABLE_NAME,TABLE_TYPE,COMMENTS 2.查询字段注释 SELECT * FROM US ...

  2. hibernate 字段名最好不要使用数据库的保留字

    请看如下红色部分,show为mysql的保留字,所以我在hibernate修改show字段值的时候出现错误,原来是show跟mysql的保留字相同了 CREATE TABLE `t_letter` ( ...

  3. 懒汉处理dapper字段名与属性名的映射方式

    你还以为走路是世上最简单的事情呢?只不过是把一只脚放到另一只脚前面.但我一直很惊讶这些原本是本能的事情实际上做起来有多困难.而吃,吃也是一样的,有些人吃起东西来可困难了.说话也是,还有爱.这些东西都可 ...

  4. MyBatis_Study_003(字段名与属性名称不一致,resultMap)

    源码:https://github.com/carryLess/mbtsstd-003 1.主配置文件 <?xml version="1.0" encoding=" ...

  5. 字段名与属性名不一致问题 通过resultMap解决

  6. MyBatis学习总结(四)——解决字段名与实体类属性名不相同的冲突(转载)

    本文转载自:http://www.cnblogs.com/jpf-java/p/6013307.html 在平时的开发中,我们表中的字段名和表对应实体类的属性名称不一定都是完全相同的,下面来演示一下这 ...

  7. MyBatis入门学习教程-解决字段名与实体类属性名不相同的冲突

    在平时的开发中,我们表中的字段名和表对应实体类的属性名称不一定都是完全相同的,下面来演示一下这种情况下的如何解决字段名与实体类属性名不相同的冲突. 一.准备演示需要使用的表和数据 CREATE TAB ...

  8. MyBatis学习总结(四)——解决字段名与实体类属性名不相同的冲突

    在平时的开发中,我们表中的字段名和表对应实体类的属性名称不一定都是完全相同的,下面来演示一下这种情况下的如何解决字段名与实体类属性名不相同的冲突. 一.准备演示需要使用的表和数据 CREATE TAB ...

  9. MyBatis——解决字段名与实体类属性名不相同的冲突

    原文:http://www.cnblogs.com/xdp-gacl/p/4264425.html 在平时的开发中,我们表中的字段名和表对应实体类的属性名称不一定都是完全相同的,下面来演示一下这种情况 ...

随机推荐

  1. Vscode下调试基于Homestead环境的Laravel框架

    PS:最近在学Laravel框架,本机IDE是Vscode,因为Vscode是真的好用!今天突然想调试php代码了,于是疯狂地在网上查资料,经过一上午的不懈努力,终于成功了! 准备工作 首先环境要保证 ...

  2. <MyBatis>入门二 全局配置文件

    <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC ...

  3. v-on(事件处理)

    1.监听事件  v-on:click="msg+=1" (msg是写在data里) 2.方法事件处理器 v-on:click = "jia" (jia是写在me ...

  4. VM 与 与 Linux 的安装

    [VMWare  安装] 输入后, [CentOS ] 1  检查 BIOS  虚拟化 2.新建虚拟机 3.新建虚拟机向导 4创建虚拟空盘 5  安装 Linux  系统对应的 CentOS 6  虚 ...

  5. ZOJ 3201 树形背包问题

    题目大意: 0~n-1号这n个点,每个点有个权值,由无向边形成了一棵树,希望在这棵树上找到一棵长为m的子树使总的权值最小 基本的树形背包问题 令dp[u][j] 表示u号节点对应子树中有j个节点所能得 ...

  6. zoj 3812 状压dp

    转载:http://blog.csdn.net/qian99/article/details/39138329 题意:给出n个物品,每个物品有两种属性Wi,Ti,有q组查询,每组查询要求在n个物品中选 ...

  7. 武大OJ 622. Symmetrical

    Description          Cyy likes something symmetrical, and Han Move likes something circular. Han Mov ...

  8. @Autowired中无法注入RestTemplate的问题

    1.在启动类中添加 @Beanpublic RestTemplate restTemplate(){ return new RestTemplate();} 即可解决无法注入RestTemplate的 ...

  9. endWith is not a function

    解决方法,增加String的扩展 String.prototype.endWith = function(suffix) { return this.indexOf(suffix, this.leng ...

  10. Ubuntu 16.04安装PDF阅读器FoxitReader

    下载: https://www.foxitsoftware.cn/downloads/ 安装: tar zxvf FoxitReader2.4.1.0609_Server_x64_enu_Setup. ...