首页 数据库 mysql教程 POJO类以及映射配置文件

POJO类以及映射配置文件

Jun 07, 2016 pm 04:03 PM
对象 耐力 提供 映射 要求 配置文件

对持久化对象的要求 1、 提供一个无参构造器,使Hibernate可以使用Constructor.newInstace()来实例化持久化对象 2、提供一个标识属性(identifier property)。通常映射为数据库表的主键字段,如果没有该属性,一些功能将不起作用,如Session.saveOrUpdate()

对持久化对象的要求

1、 提供一个无参构造器,使Hibernate可以使用Constructor.newInstace()来实例化持久化对象

2、提供一个标识属性(identifier property)。通常映射为数据库表的主键字段,如果没有该属性,一些功能将不起作用,如Session.saveOrUpdate()。

3、 为持久化类的字段声明访问方法(set/get)。Hibernate对javaBean风格的属性实行持久化。

4、使用非final类,在运行时生成代理是Hibernate的一个重要功能,如果持久化类没有实现任何接口,Hibernate使用CGLB生成代理,如果使用final类,则无法生成CGLIB代理。

5、重写equals()和hashCode()方法,如果需要将持久化类放到Set中(当需要进行关联映射时),则应该重写这两个方法。

对于映射配置文件中非主键元素使用标签映射,标签的type属性用来指定持久化类和数据表中的类型。

可以写Java中类的全名,也可以写Hibernate类型。

映射主键属性

主键如果是数字建议使用对应的包装类型。

id元素用于映射主键,id元素子元素的class属性用于指定主键生成策略。

其常用值如下:

identity:使用数据库的自动增长策略,不是所有数据库都支持,比如Oracle就不支持

sequence:在DB2,PostgreSQL,Oracle,SAPDB等中使用sequence。

hilo:使用高地位算法生成主键,只需要一张额外的表,所有的数据库都支持。

increment:由Hibernate维护的,先查询当前最大的id值,在加1增长,不推荐使用,因为有线程安全问题。

assigned:手工指定主键。

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

win10用户配置文件在哪? Win10设置用户配置文件的方法 win10用户配置文件在哪? Win10设置用户配置文件的方法 Jun 25, 2024 pm 05:55 PM

最近有不少Win10系统的用户想要更改用户配置文件,但不清楚具体如何操作,本文将给大家带来Win10系统设置用户配置文件的操作方法吧!Win10如何设置用户配置文件1、首先,按下“Win+I”键打开设置界面,并点击进入到“系统”设置。2、接着,在打开的界面中,点击左侧的“关于”,再找到并点击其中的“高级系统设置”。3、然后,在弹出的窗口中,切换到“”选项栏,并点击下方“用户配

如何将 MySQL 查询结果数组转换为对象? 如何将 MySQL 查询结果数组转换为对象? Apr 29, 2024 pm 01:09 PM

将MySQL查询结果数组转换为对象的方法如下:创建一个空对象数组。循环结果数组并为每一行创建一个新的对象。使用foreach循环将每一行的键值对赋给新对象的相应属性。将新对象添加到对象数组中。关闭数据库连接。

在Ubuntu上安装Helm 在Ubuntu上安装Helm Mar 20, 2024 pm 06:41 PM

Helm是Kubernetes的一个重要组件,它通过将配置文件捆绑到一个称为HelmChart的包中来简化Kubernetes应用程序的部署。这种方法使得更新单个配置文件比修改多个文件更加便捷。借助Helm,用户可以轻松地部署Kubernetes应用程序,简化了整个部署过程,提高了效率。在本指南中,我将介绍在Ubuntu上实现Helm的不同方法。请注意:以下指南中的命令适用于Ubuntu22.04以及所有Ubuntu版本和基于Debian的发行版。这些命令经过测试,应该在您的系统上正常运行。在U

数组和对象在 PHP 中的区别是什么? 数组和对象在 PHP 中的区别是什么? Apr 29, 2024 pm 02:39 PM

PHP中,数组是有序序列,以索引访问元素;对象是具有属性和方法的实体,通过new关键字创建。数组访问通过索引,对象访问通过属性/方法。数组值传递,对象引用传递。

Java JPA 面试题精选:检验你的持久化框架掌握程度 Java JPA 面试题精选:检验你的持久化框架掌握程度 Feb 19, 2024 pm 09:12 PM

什么是JPA?它与JDBC有什么区别?JPA(JavaPersistenceapi)是一个用于对象关系映射(ORM)的标准接口,它允许Java开发者使用熟悉的Java对象来操作数据库,而无需编写直接针对数据库的sql查询。而JDBC(JavaDatabaseConnectivity)是Java用于连接数据库的标准API,它需要开发者使用SQL语句来操作数据库。JPA将JDBC封装起来,为对象-关系映射提供了更方便、更高级别的API,简化了数据访问操作。在JPA中,什么是实体(Entity)?实体

PHP中的Request对象是什么? PHP中的Request对象是什么? Feb 27, 2024 pm 09:06 PM

PHP中的Request对象是用于处理客户端发送到服务器的HTTP请求的对象。通过Request对象,我们可以获取客户端的请求信息,比如请求方法、请求头信息、请求参数等,从而实现对请求的处理和响应。在PHP中,可以使用$_REQUEST、$_GET、$_POST等全局变量来获取请求的信息,但是这些变量并不是对象,而是数组。为了更加灵活和方便地处理请求信息,可

C++ 函数返回对象时有什么需要注意的? C++ 函数返回对象时有什么需要注意的? Apr 19, 2024 pm 12:15 PM

在C++中,函数返回对象需要注意三点:对象的生命周期由调用者负责管理,以防止内存泄漏。避免悬垂指针,通过动态分配内存或返回对象本身来确保对象在函数返回后仍然有效。编译器可能会优化返回对象的副本生成,以提高性能,但如果对象是值语义传递的,则无需副本生成。

win11硬件要求 win11硬件要求 Jan 11, 2024 pm 10:45 PM

win11上线已有一年时间了,现在系统已经越发成熟了,有很多小伙伴想把自己的win10系统升级成为win11系统也是可以的,不过升级之前要先了解自己的电脑是否支持。win11硬件要求:处理器:1GHz或更快的支持64位的处理器(双核或多核)或系统单芯片(SoC)。内存:4GB。存储:64GB或更大的存储设备,注:有关详细信息,请参见以下“关于保持Windows11最新所需存储空间的更多信息”。系统固件:支持UEFI安全启动。请在此处查看关于如何启用电脑以满足这一要求的说明。TPM:受信任的平台模

See all articles