搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
Monodyee
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
Codeforces Round #768 (div1)(A~D)_codeforces round 768 (div. 1)
2
【iOS面试总结】疫情隔离中,线上面试的问题集合(第二部分)
3
CUDA+PTX关于GPU的入门基础概念_ptx gpu
4
value of type `java.lang.Long` from Object value (token `JsonToken.START_OBJECT`)
5
Redis知识点总结_neo4j 同时执行多个命令
6
数学建模论文写作经验介绍_数学建模关键词格式
7
如何将本地项目上传到Github(SSH方式)
8
人工智能三种主要学派:符号主义、连接主义和行为主义。_人工智能联结主义
9
【C语言】——数据在内存中的存储
10
【SAP-HCM】--HR模块员工照片录入ARCHIV_CREATE_FILE_sap-hr-员工照片配置
当前位置:
article
> 正文
Hibernate的基本标签和映射
作者:Monodyee | 2024-05-03 09:51:44
赞
踩
hibernate-mapping for 标签
hibernate基本映射标签和属性
1.<hibernate-mapping>标签
<hibernate-mapping schema="schemaName" (1) catalog="catalogName" (2) default-cascade="cascade_style" (3) default-access="field|property|ClassName" (4) default-lazy="true|false" (5) auto-import="true|false" (6) package="package.name" (7) />
(1) schema (可选): 数据库schema的名称。
(2) catalog (可选): 数据库catalog的名称。
(3) default-cascade (可选 - 默认为 none): 默认的级联风格。
(4) default-access (可选 - 默认为 property): Hibernate用来访问所有属性的策略。可以通过实现PropertyAccessor接口 自定义。
(5) default-lazy (可选 - 默认为 true): 指定了未明确注明lazy属性的Java属性和集合类, Hibernate会采取什么样的默认加载风格。
(6) auto-import (可选 - 默认为 true): 指定我们是否可以在查询语言中使用非全限定的类名(仅限于本映射文件中的类)。
(7) package (可选): 指定一个包前缀,如果在映射文档中没有指定全限定的类名, 就使用这个作为包名。 假若有两个持久化类,它们的非全限定名是一样的(就是两个类的名字一样,所在的包不一样),应该设置auto-import="false".如果把一个“import”的名字对应两个类,Hibernate会拋出一个异常hibernate-mapping元素允许嵌套多个<class>映射,但最好的做法是一个持久化类对应一个映射文件,并以持久化的超类名称命名。如:Xxx.hbm.xml
2.<class>标签
<class name="ClassName" (1) table="tableName" (2) dynamic-update="true|false" (3) dynamic-insert="true|false" (4) optimistic-lock="none|version|dirty|all" (5) lazy="true|false" (6) />(1)name(可选):持久化类(或者接口)的Java全限定名。如果这个属性不存在,Hibernate将假定这是一个非POJO的实体映射
(2)table(可选-默认是类的非全限定名):对应数据库表名,生成DDL时数据表名,如果省略,则名称同持久化类名称
(3)dynamic-update(可选,默认为false):指定用于UPDATE的SQL将会在运行时动态生成,只更新那些被改过的字段
(4)dynamic-insert(可选,默认为false):指定用于insert的sql将会在运行时动态生成,并且只包含那些非空字段
(5) optimistic-lock(乐观锁定) (可选,默认是version): 决定乐观锁定的策略。
(6) lazy (可选): 通过设置lazy="false", 所有的延迟加载(Lazy fetching)功能将被全部禁用(disabled)。
3.<id>标签
<id>标签必须配置在<class>标签的第一个位置。由一个字段构成主键,<id>元素定义了该属性到数据库表主键字段的映射
<id name="propertyName" (1) type="typename" (2) column="column_name"> (3) length="length"> (4) <generator class="generatorClass" /> </id>
(1)name:实体类的属性名字
(2)type:标识Hibernate类型的名字(省略则使用Hibernate默认类型),也可以自己配置类型(integer,long,short,float,double,character,byte,boolean,yes_no,true_false)
(3)column(可选-默认为属性名):主键字段的名字(省略则取name为字段名)
(4)length(可选):当type为varchar时,设置字段长度
<generator>元素(主键生成策略)
主键生成策略必须配置,用来为该持久化类的实例生成唯一的标识。
uuid:
用一个128-bit的UUID算法生成字符串类型的标识符,这在一个网络中是唯一的(使用了IP地址),UUID被编码为一个32位16进制数字的字符串,它的生成是由Hibernate生成,一般不会重复UUID包含:IP地址,JVM的启动时间,系统时间和一个计算器值。
native:
根据底层数据库的能力选择identity,sequence或者hilo中的一个(数据库自增)
assigned
让程序在save()之前为对象分配一个表示符。这是<generator>元素没有指定时的默认生成策略。(如果是手动分配,则需要设置此配置)
5.<property>标签
用于映射普通属性到表字段
<property name="propertyName" column="column_name" type="typename" length="" unique="" not-null="" > </property>
注:如果实体类和实体类中的属性和SQL中的关键字重复,必须采用table或column重新命名
6.Hibernate完整映射实例:
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <!-- class标签 实体类映射到数据表 * name属性:实体类的完整路径 * table属性:实体类映射到数据库中的表名,如果省略,则为实体类的类名称 --> <class name="com.wjt276.hibernate.User1"> <!-- 映射数据库主键 映射到数据表中的字段名默认为类属性名,但可以利用column重新指定--> <id name="id" column="id"> <!-- generator设置主键生成策略 uuid:一万年内生成唯一的字符串 --> <generator class="uuid"/> </id> <!-- property 映射普通属性 映射到数据表中的字段名默认为类属性名,但可以利用column重新指定 unique:唯一约束; not-null:非空约束 length:字段长度 --> <property name="name" unique="true" not-null="true" length="20"/> <property name="password" not-null="true" length="10"/> <property name="createTime"/><!--Hibernate会自动根据实体类属性类型生成数据库表中字段类型 --> <property name="expireTime"/> </class> </hibernate-mapping>
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/Monodyee/article/detail/529012
推荐阅读
article
Deep
learning
Part
Five
RNN
--24.4.29...
除此之外,根据图中5-5的左图所示,在CBOW模型的中间层求单词向量的和,这时就会出现另一个问题的,那就是上下文的单词的...
赞
踩
article
【踩坑】
py
charm
中 .
i
py
nb
文件
与 .
py
文件
导入
路径不同_
py
charm
导入
i
py
nb
...
py
charm
中 .
i
py
nb
文件
与 .
py
文件
导入
路径不同一、
py
charm
中 .
i
py
nb
文件
的
导入
路径二、.
py
...
赞
踩
article
Rust
学习教程32 -
动态
数组
Vec
_
rust
动态
数组
vec
基本概念
及其用法...
本文节选自<<
Rust
语言圣经>>一书欢迎大家加入
Rust
编程学院,一起学习交流:QQ群:1009730433
动态
数组
V...
赞
踩
article
D3
.
js
介绍与入门...
D3
.
js
(全称:Data-Driven Documents)数据驱动文档是一个基于数据驱动 DOM 的 JS 库。相比...
赞
踩
article
Fabric
区块
链
浏览器
搭建...
在建好Hyperledger Fabric链之后,将为这条链部署一个
区块
链
浏览器
。_fabric
区块
链
浏览器
fabric...
赞
踩
article
词云
生成
库
wordcloud
详解(二)
:
wordcloud
.
py
模块
结构、
生成
颜色
接口
_
wordcl...
当前
wordcloud
版本
:
1.81
wordcloud
.
py
模块
结构
wordcloud
.
py
模块
是
wordcloud
包主...
赞
踩
article
matlab
基础总结与
图像
处理
应用(上)_用
matlab
生成
长度
为
1
00
的
均值
为
1
,
方差
为
1
的
高斯函...
本篇内容是我用
matlab
学习
图像
处理
的
记录,第一部分总结了
matlab
基础语法;第二部分实现了一个
图像
处理
入门
的
算法。...
赞
踩
article
萌新问题合集:2.
win10
关于
ftp
保存
了
密码
怎么取消?_
windows
下误点
了
ftp
保存
密码
...
许多小伙伴都会有手贱的时候,然而阅览各大论坛,均无有效的解救之法,其实很简单首先打开
ftp
,你会进入你
保存
密码
的文件夹,...
赞
踩
article
数据结构
-
平衡
二叉
搜索
树
-
java
实现
平衡
二叉
搜索
树
添加和
删除
节点_实现
平衡
二叉
树
的构造,检索,
插入
...
为什么要创建
平衡
二叉
搜索
树
当一个
二叉
搜索
树
每个结点的C(i)为该结点的层次数。最坏情况下,当先后
插入
的关键字有序时,构成...
赞
踩
article
关于
butterknife
1
0
.
0
.
0
的
更新和
AndroidX
的
使用
_
安卓升級
androidx
bu...
想更新项目中
使用
的
依赖
的
版本以提高APP
的
稳定性,而修改了AndroidStudio
的
app
的
gradle文件然后问题出...
赞
踩
article
梦幻
群侠传
5
帮派
修炼_
梦幻
西游手游维护
更
新
解读:冰雪跨年会
持续
进行
,
新
门派消息放出
...
...
哈喽
,
各位小伙伴大家好!又到了灵儿来为大家解读《
梦幻
西游》手游维护
更
新
的时刻啦!不知道上周开启的冰雪跨年会活动
,
大家有没...
赞
踩
article
解决Program
type
already
present
_program
type
alread...
Program
type
already
present
:
android
.
arch
.
core
.util.Functio...
赞
踩
article
Homeassistant
docker
配置_
docker
esphome
...
【说明】本系列为自用教程,记录以便下次使用【背景】一台J1900 4G+64G的小主机,安装了OP系统,里面自带了Doc...
赞
踩
article
elasticsearch
学习
笔记(基本语法与
原理
)
_
es
scan
原理
...
elasticsearch
学习
笔记一,利用管道读入文件二,
elasticsearch
中的分页1.form+size 浅分...
赞
踩
article
风格
迁移学习
GramMatrix
_
格拉姆
矩阵
风格
...
格拉姆
矩阵
(Gram matrix)
风格
迁移应用学习1.向量内积向量的点乘,对两个向量执行内积运算,就是对这两个向量对应...
赞
踩
article
博众精工机械
工程师
岗
面试
官
一直
微笑,
面试
体验
让我觉得非常愉快...
浙江人,女友找了杭州的工作,百度和oppo都是35左右,公积金➕餐补百度能高个2w5,但是百度是测开在北京,oppo是互...
赞
踩
article
CogView
中的
Transformer
_
checkpoint
_
activations
...
目录一、原理二、代码解析一、原理1、总体介绍将n个的 transformer blocks 打包在一起,即 n * tr...
赞
踩
article
Java
中
的
Map
接口有哪些
方法
可以
用来遍历它
的
键值对?...
此外,您需要将`your-email@gmail.com`和`your-email-password`替换为实际
的
电子邮...
赞
踩
article
40
网桥
的
基本概念
及其
原理
_
网桥
的
概念和
基本
原理
...
网桥
的
概念及其
基本
原理
:两个或多个以太网通过
网桥
连接起来后,就会成为一个覆盖范围更大
的
以太网,而原来
的
每个以太网就可以称...
赞
踩
article
SD-
WebUI
-
SadTalker
:让照片说话
,
数字人
使用
方法_
sadtalker
对显卡
的
要求...
AIGC技术
的
未来发展前景广阔
,
随着人工智能技术
的
不断发展
,
AIGC技术也将不断提高。未来
,
AIGC技术将在游戏和计算领...
赞
踩
相关标签
深度学习
cnn
人工智能
python
os
rust
开发语言
后端
javascript
前端
fabric
区块链
Hyperledger
区块链浏览器
matplotlib
wordcloud
颜色
词云
转换
matlab
图像处理
windows
ftp
平衡二叉搜索树
平衡二叉树