`

Hibernate 写入数据库加入Timetamp(时间戳)配置

    博客分类:
  • J2EE
阅读更多
xxx.hbm.xml配置如下:

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated Jan 5, 2013 2:10:24 PM by Hibernate Tools 3.4.0.CR1 -->
<hibernate-mapping>
    <class name="com.shinelife.dao.Player" table="player" catalog="tiexue">
        <id name="id" type="java.lang.Integer">
            <column name="ID" />
            <generator class="identity" />
        </id>
        <property name="playerId" type="java.lang.String">
            <column name="playerId" length="20" />
        </property>
        <property name="playerName" type="java.lang.String">
            <column name="playerName" length="20" />
        </property>
        <property name="haveMoney" type="java.lang.Double">
            <column name="haveMoney" precision="22" scale="0" />
        </property>
        <property name="sex" type="java.lang.String">
            <column name="sex" length="1" />
        </property>
        <property name="headUrl" type="java.lang.String">
            <column name="headUrl" length="50" />
        </property>
        <property name="timetamp" type="java.sql.Timestamp" generated="insert" not-null="true">
            <column name="timetamp" sql-type="timestamp" default="CURRENT_TIMESTAMP" />
        </property>
    </class>
</hibernate-mapping>
----------------------------------------
一般使用 property 映射中的 generated 开关启用这个自动刷新,而最下面createTime的配置:

<property name="time" type="java.sql.Timestamp" generated="insert" not-null="true">
            <column name="time" sql-type="timestamp" default="CURRENT_TIMESTAMP" />
        </property>
---------------------

关于 generated 的适用值说明:

    never(默认): 标明此属性值不是从数据库中生成, 也就是根本不用刷新实体类了.
    insert: 标明此属性值在insert的时候生成, 但是不会在随后的update时重新生成. 也就是只在insert情况下才会刷新实体类.
    always: 标明此属性值在insert和update时都会被生成, 也就是在insert, update情况下都会刷新实体类.

sql-type 指生成的时间的类型

default Hibernate本身提供 current_date, current_timestamp 和 current_time 三种函数.

个人总结:其实还有一种最为方便的方法:1.在数据库中选择字段类型为timestemp。
2.设置一个default为:CURRENT_TIMESTAMP
3.利用myEclipse的db映射工具自动映射过来就OK了。

分享到:
评论

相关推荐

    时间戳实例 绝对好使 hibernate全自动实现时间戳

    标题“时间戳实例 绝对好使 hibernate全自动实现时间戳”暗示我们将探讨如何在Hibernate框架中自动地利用时间戳来追踪数据库中的记录更改。Hibernate是Java中流行的对象关系映射(ORM)工具,它允许开发者使用面向...

    log4net写入数据库

    1. **创建数据库表**:首先,你需要在数据库中创建一个用于存储日志信息的表,通常包括ID、时间戳、级别、消息和堆栈跟踪等字段。 2. **配置连接字符串**:在log4net配置文件中,设置AdoNetAppender的Connection...

    log4j使用与java中log4j记录日志如何写入数据库

    5. **数据库写入**:要将日志记录到数据库,需要在`log4j.properties`配置文件中设置Appender。例如,可以使用`JDBCAppender`,配置包括数据库连接URL、用户名、密码、SQL语句等。SQL语句通常会插入日志级别、时间戳...

    log4j写入数据库配置

    总结来说,Log4j写入数据库的配置涉及到创建适应的数据库表结构、配置`log4j.properties`文件以指定数据库连接信息和日志格式,并通过`JDBCAppender`将日志数据持久化到数据库中。这样的配置有助于收集和分析大量...

    log4j日志写入数据库实例

    通常,这需要创建一个数据库表来存储日志字段,如日志级别、时间戳、logger名、消息等。 4. **数据库准备**:在实际应用前,需要在数据库中创建对应的日志表,并确保与JDBCAppender的SQL语句匹配。 5. **日志记录...

    NLog记录日志、发邮件、写入数据库

    本主题将深入探讨如何使用NLog进行日志记录、发送邮件以及写入数据库,以实现高效且灵活的日志管理。 一、NLog基础 NLog提供了一个简单易用的API,可以轻松地在代码中插入日志记录语句。首先,需要在项目中引用...

    时间戳 日期时间的转换

    时间戳在Web开发、数据库存储、日志记录等多个领域都有广泛应用。理解并掌握时间戳与日期时间的转换对于任何IT专业人员来说都是非常基础且必要的技能。通过使用合适的编程语言和库,我们可以轻松地在这两种表示方式...

    php上传图片并把信息写入数据库代码

    可以结合时间戳和随机数生成。 3. **存储到数据库**: - 建立一个数据库,包含字段如`id`(主键)、`filename`、`description`(图片说明)、`uploaded_time`等。 - 使用PHP的PDO或mysqli库连接到数据库,执行...

    KETTLE时间戳-源数据自带时间

    在"转换"中,你可以设置"表输入"来读取源数据库的时间戳数据,然后通过"转换步骤"(如"过滤行"、"字段选择"等)进行数据处理,最后使用"表输出"将处理后的时间戳数据写入目标数据库。在"作业"中,可以设置调度和监控...

    C#,SQL数据库基于时间戳的更新Demo

    C#,SQL数据库基于时间戳的更新:对于并发访问数据难免造成本地数据不是最新,普通的数据更新方式,容易覆盖已更新的数据。本人SQL功底不是太好,感觉锁复杂,就选择时间戳的方式更新数据可避免并发造成的问题。网上...

    定时备份mysql数据库时间戳命名实例

    ### 定时备份MySQL数据库时间戳命名实例 在IT领域,数据备份是一项至关重要的工作,尤其是在数据库管理中。本文将详细介绍一种通过脚本实现MySQL数据库定时逻辑备份的方法,并结合时间戳进行文件命名,确保每次备份...

    oracle数据库实现获取时间戳的无参函数

    在Oracle数据库中,时间戳(Timestamp)是一种用来记录精确到秒甚至毫秒的日期和时间数据类型。在处理与时间相关的业务逻辑时,有时我们需要获取当前时间的时间戳,以便进行各种计算或比较。本文将详细介绍如何在...

    学习用go去实现日志读取、解析、写入数据库 流程

    本教程将深入探讨如何使用Go来实现日志读取、解析以及将数据写入数据库的过程。 首先,我们需要理解日志读取的基本步骤。日志通常以文本格式存储,可能分布在不同的文件或日志流中。使用Go,我们可以利用`ioutil....

    调用基于IP的监控抓图并写入数据库

    标题中的“调用基于IP的监控抓图并写入数据库”指的是使用编程语言(在这种情况下是C#)来实现一个功能,该功能可以与IP摄像头交互,捕获图像,并将这些图像存储到数据库中。这一过程涉及多个技术点,包括网络通信、...

    Secure CRT 自动记录日志和时间戳功能配置

    这里介绍的是如何在SecureCRT软件中配置自动记录日志以及如何在每条日志前插入时间戳,具体内容如下: 一、自动日志记录功能配置 要设置SecureCRT自动记录日志,首先需要打开SecureCRT软件,然后按照以下步骤进行...

    ASP侦错程序(错误详细信息写入数据库)

    "ASP侦错程序(错误详细信息写入数据库)"是一个特别设计的解决方案,它将ASP应用中的错误信息捕获并记录到数据库中,便于后续分析和调试。 首先,创建一个数据库表是这个系统的核心部分。表的设计应该包括足够的...

    为每个数据包写入时间戳的log-to-file.c

    原本的log_to_file写入的数据没有时间戳,不方便数据标注,其它博主的修改版又改为创建多个带以时间戳命名的数据文件,虽然读起来方便,但太复杂。 下面的修改版简化了文件管理,把毫秒级的精确时间戳写入了每个...

    Java的Hibernate框架数据库操作中锁的使用和查询类型

    在Java的Hibernate框架中,数据库操作的锁和查询类型对于保证数据一致性至关重要。Hibernate作为SSH三大Web开发框架之一,提供了一种便捷的方式来处理数据库交互。本文将深入探讨Hibernate中的锁机制以及不同类型的...

Global site tag (gtag.js) - Google Analytics