Hibernate单表操作的示例分析

  介绍

这篇文章主要为大家展示了“Hibernate单表操作的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Hibernate单表操作的示例分析”这篇文章吧。

单一主键

分配:由Java应用程序负责生成(即手工的赋值)

本地:由底层的数据库自动的生成标示符,如果是MySQL就是auto_increment,如果是甲骨文就是序列,等等

操作的时候还是需要结合hibernate.cfg.xml文件的,因为数据库中的hbm2ddl。汽车属性如果是更新的时候,设置为主键自增是可以的;但是如果是创建的时候,第二次如果不手工的改变,恐怕就要出错误了。

基本类型

一般来说,按照Java的数据类型进行操作就可以。

 Hibernate单表操作的示例分析

其中最容易出错的数据类型是日期和时间戳两种。

——日期类型既可以映射成java.util.Date,也可以映射成java.sql。日期类型。代表日期:yyyy-MM-dd
-时间类型映射成java.util。时间和java.sql。时间代表的时间:hh: mm: ss
- timesaamp可以映射成java.util.Date或者java.sql.TimeStamp类型,代表的时间和日期:yyyymmddhhmmss

如何更改其阿紫数据库中的数据库类型呢?

在XX.hbm。xml文件中对类对象的属性的类型属性进行更改即可。改成冬眠自带的数据类型就可以了。

对象类型

下面是Hibernate支持的对象类型的总结:

 Hibernate单表操作的示例分析

操作的时候只需要按照相应的API即可。

需要注意的是MySQL不支持标准的CLOB类型,在MySQL中用文本、简单及量变类型来表示长度超过255的长文本数据。

组件属性

实体类中某个属性属于用户自定义的类的对象

如:

& lt; component  name=癮ddress",类=癮ddress"比;   & lt;才能property  name=皃ostcode",列=皃ostcode",/比;   & lt;才能property  name=皃hone",列=皃hone",/比;   & lt;才能property  name=癮ddress",列=癮ddress",/比;   & lt;/component>

也就是说一旦是用户自定义的类型的话,在XX.hbm。xml文件中就要使用组件标签,而不是单纯的财产标签了。这一点应该有其的注意。

单表操作CRUD的实例

这里主要是使用到了会话的几个常用的api。如保存、更新、删除、和得到/负载等等。

-保存:直接调用会话。保存(对象的实例)
- get/负载:session.get/负载(XX。类,标示符);其中这个标示符可以是主键对应的值
-更新:session.update(对象的实例)
-删除:session.delete(对象的实例)

得到与负载的区别:

——一,不考虑缓存的情况下,得到方法在调用之后立即的向数据库发送SQL语句,返回持久化的对象,而负载方法会在调用后返回一个代理的对象,该代理对象只保存了实体对象的id,知道适用对象的非主键属性时才会发出SQL语句。

,二,查询数据库中不存在的数据时,得到的方法返回的是null,负载方法则会抛出异常org.hibernate。ObjectNotFoundException

以上是“Hibernate单表操作的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

Hibernate单表操作的示例分析