当前位置: 首页 > 面试题库 >

Hibernate MSSQL datetime2映射

暨弘毅
2023-03-14
问题内容

我有一个存储过程,该过程返回数据库中数据类型为datetime2以及Java文件中Date为数据的列。当我尝试在从数据库获取的时间上调用getTime()时。它返回的19994321211毫秒等于IST
2015年5月4日星期一。理想情况下,它应该返回2015-05-04 15:21:52的毫秒,因为这是直接执行过程时数据库中显示的时间。

由于我是Hibernate的新手,所以我无法理解问题是否与hibernate映射有关,或者我是否错过了其他事情。

<hibernate-mapping>
   <sql-query name="getMLC">
            <return-scalar column="mlcid" type="int" />
            <return-scalar column="completionTime" type="date" />
            { call lsc.MLC_Get(:ABC, :XYZ, :ErrorCode)}
    </sql-query>
</hibernate-mapping>

class Mlc implements java.io.Serializable {

    private Integer mlcid;
    private Date completionTime;
    // getter and setter
}

问题答案:

尝试像这样注册一个新的驱动程序:

public class DateTime2SQLServerDialect extends SQLServer2008Dialect {

   public DateTime2SQLServerDialect () {
      super();
      registerColumnType(Types.DATE, "datetime2");
   }
}

然后改用以下方言:

<property name="hibernate.dialect">my.package.DateTime2SQLServerDialect</property>

也尝试更改此:

<return-scalar column="completionTime" type="date" />

对此:

<return-scalar column="completionTime" type="timestamp" />


 类似资料:
  • 我正在使用Hibernate和JPA注释来映射我的类。当hibernate尝试映射这个类时,我遇到了一个问题 我的Social alStat类是: 我得到了这个错误: 我猜发生这种情况是因为我试图映射到一个基本类,但@ElementCollection注释不应该解决这个问题吗? 我的item类如下所示:

  • 前端将这个json发送到我的API 控制器:

  • 前缀映射,后缀映射和缓存映射 通过 names.NewPrefixMapper(names.SnakeMapper{}, "prefix") 可以创建一个在 SnakeMapper 的基础上在命名中添加统一的前缀,当然也可以把 SnakeMapper{} 换成 SameMapper 或者你自定义的 Mapper。 例如,如果希望所有的表名都在结构体自动命名的基础上加一个前缀而字段名不加前缀,则可以

  • 又称关联数组(associative array)或字典(dictionary),是以 [键, 值] 有序对为数据形态的数据结构,其中键名用来查询特定元素。

  • 将一个范围的数字映射到另一个范围 用法 Your browser does not support the video tag. 案例:数据变化趋势 功能:加入映射和不加映射的折线图形成对比,显示数字改变的规律 工作原理 从配置项中设定两个范围。输入将会按照指定的范围映射。 Example: make a thermometer. The temperature (0~50) is scaled

  • 问题内容: 我一直在研究一个非常简单的JPA示例,并试图将其调整为现有数据库。但是我无法克服这个错误。(下面。)这只是我没看到的一些简单的事情。 在下面的DocumentManager类中(一个简单的servlet,因为这是我的目标),它做了两件事: 插入一行 返回所有行 插入效果很好-一切都很好。问题出在检索上。我尝试了各种参数值,但没有走运,并且尝试了各种更复杂的类注释(如列类型),但都没有成

  • 当我尝试通过枚举将源中的字符串映射到目标中的整数时。ModelMapper失败。 来源 目的地 字符串和整数之间的映射在枚举中定义