`
anyeeye
  • 浏览: 145532 次
  • 来自: ...
社区版块
存档分类
最新评论

UserType _2

阅读更多
<class name="RecordLog"> 
    <id name="id"> 
        <generator class="native"/> 
    </id> 
       <property name="description"/> 
       <property name="interval" type="TimeIntervalType"> 
           <column name="LOWER_LIMIT"/> 
           <column name="INCLUDES_LOWER_LIMIT"/> 
           <column name="UPPER_LIMIT"/> 
           <column name="INCLUDES_UPPER_LIMIT"/> 
       </property> 
</class> 


public class RecordLog extends Entity {  
    private String description;  
    private TimeInterval interval;  
    //getters and setters......  
}

<class name="RecordLog"> 
    <id name="id"> 
        <generator class="native"/> 
    </id> 
       <property name="description"/> 
       <property name="interval" type="TimeIntervalType"> 
           <column name="LOWER_LIMIT"/> 
           <column name="INCLUDES_LOWER_LIMIT"/> 
           <column name="UPPER_LIMIT"/> 
           <column name="INCLUDES_UPPER_LIMIT"/> 
       </property> 
</class> 

assertEquals(nov02, loaded.getInterval().lowerLimit());  
    assertEquals(nov03, loaded.getInterval().upperLimit());  

public class TimeIntervalType implements UserType {

private static final int[] SQL_TYPES = new int[] { Hibernate.TIMESTAMP.sqlType(), Hibernate.BOOLEAN.sqlType(), Hibernate.TIMESTAMP.sqlType(),
Hibernate.BOOLEAN.sqlType() };

public int[] sqlTypes() {
return SQL_TYPES;
}

public Class returnedClass() {
return TimeInterval.class;
}

public boolean equals(Object x, Object y) throws HibernateException {
if (x == y)
return true;
if (x == null || y == null)
return false;
return ((TimeInterval) x).compareTo((TimeInterval) y) == 0;
}

public Object nullSafeGet(ResultSet rs, String[] names, Object owner) throws HibernateException, SQLException {
TimePoint lower = TimePoint.from((Timestamp) Hibernate.TIMESTAMP.nullSafeGet(rs, names[0]));
boolean lowerIncluded = ((Boolean) Hibernate.BOOLEAN.nullSafeGet(rs, names[1])).booleanValue();
TimePoint upper = TimePoint.from((Timestamp) Hibernate.TIMESTAMP.nullSafeGet(rs, names[2]));
boolean upperIncluded = ((Boolean) Hibernate.BOOLEAN.nullSafeGet(rs, names[3])).booleanValue();
return new TimeInterval(lower, lowerIncluded, upper, upperIncluded);
}

public void nullSafeSet(PreparedStatement st, Object value, int index) throws HibernateException, SQLException {
TimeInterval interval = (TimeInterval) value;
Hibernate.TIMESTAMP.nullSafeSet(st, new Timestamp(((TimePoint) interval.lowerLimit()).asJavaUtilDate().getTime()), index);
Hibernate.BOOLEAN.nullSafeSet(st, new Boolean(interval.includesLowerLimit()), index + 1);
Hibernate.TIMESTAMP.nullSafeSet(st, new Timestamp(((TimePoint) interval.upperLimit()).asJavaUtilDate().getTime()), index + 2);
Hibernate.BOOLEAN.nullSafeSet(st, new Boolean(interval.includesUpperLimit()), index + 3);
}

public Object deepCopy(Object value) throws HibernateException {
if (value == null)
return null;
TimeInterval interval = (TimeInterval) value;
return new TimeInterval((TimePoint) interval.lowerLimit(), interval.includesLowerLimit(), (TimePoint) interval.upperLimit(), interval
.includesUpperLimit());
}

public boolean isMutable() {
return true;
}

}

分享到:
评论

相关推荐

    VC开发工具使用技巧源代码_usertype.zip

    VC开发工具使用技巧源代码_usertype.zipVC开发工具使用技巧源代码_usertype.zipVC开发工具使用技巧源代码_usertype.zipVC开发工具使用技巧源代码_usertype.zipVC开发工具使用技巧源代码_usertype.zip

    CUDA SDK 语法高亮必备 usertype.dat

    在VS中配置CUDA时,本身是不识别CUDA关键字的,关键字不能高亮。早期的CUDA版本在SDK中提供了usertype.dat,其中包含CUDA的关键字,但后来的CUDA没有这个文件,网上找了好久,现在贴出来亲测可用~

    usertype.dat

    HLSL的关键字,放在vs的IDE文件下,以在vs中高亮HLSL的关键字

    VS2005编辑器支持着色器语法高亮,一个完整的usertype.dat

    1. 创建或编辑usertype.dat文件(此文件在VS安装目录下的Common7\IDE下面,比如我的就在D:\Program Files\Microsoft Visual Studio 8\Common7\IDE\usertype.dat),添加如下的关键字列表,每个单词占一行,如果你想...

    qt自定义类型 Q_DECLARE_METATYPE与qRegisterMetaType

    qRegisterMetaType 必须使用该函数的两种情况:1、如果非QMetaType内置类型要在 Qt 的属性系统中使用2、如果非QMetaType内置类型要在 queued 信号与槽 中使用。 资源中对于如何使用给出代码样例,可以直接运行。

    BaiduNetdisk_mac_3.4.1.dmg

    百度网盘mac

    CMPP2.0-Java源代码带工具.rar

    168 = USERTYPE_ERR : ZTE_EXTENED UserType取值错误 169 = ROUTE_ERR : ZTE_EXTENED 路由失败 170 = SMMC_ERR : ZTE_EXTENED 信息过滤失败 171 = IAGWM_LINK_DOWN : ZTE_EXTENED 与IAGW M模块断链 172 = ...

    cocos2dx_lua使用c++

    tolua_usertype(tolua_S, "LuaUseSprite"); ``` 接下来,我们需要在 `TOLUA_API int tolua_Cocos2d_open(lua_State* tolua_S)` 函数中添加我们的自定义类的注册代码: ```c tolua_cclass(tolua_S, "LuaUseSprite", ...

    商业编程-源码-VC开发工具使用技巧源代码 usertype.zip

    本资源“商业编程-源码-VC开发工具使用技巧源代码 usertype.zip”包含了一组与VC开发相关的源代码,旨在帮助开发者深入理解和掌握VC开发工具的实用技巧。 1. **VC开发环境设置**:VC不仅仅是一个编译器,它还包括一...

    枚举类型在switch语句中的用法

    UserType type = UserType.valueOf(userType); switch (type) { case STUDENT: // 学生相关的处理逻辑 break; case TEACHER: // 教师相关的处理逻辑 break; case PARENT: // 家长相关的处理逻辑 break; ...

    AUTOSAR_SWS_BSWModeManager.pdf

    3. 在R4.4.0版本中,对EcuM API的处理进行了重构,特别是与关机相关的API(如BswMEcuMGoDownHaltPoll),移除了对EcuM固定的依赖,更新了BswM_NvM_CurrentJobMode、BswM_ModeType、BswM_UserType和Det错误代码。...

    Log_Encapsulation_demo.rar

    在IT行业中,日志记录是程序调试、性能分析和故障排查的重要工具。在这个"Log_Encapsulation_demo"项目中,开发者采用C++编程语言,利用fstream、ofstream和ifstream库来实现了一个高效且灵活的日志操作类。...

    Python库 | graphene_sqlalchemy-2.0.0-py2.py3-none-any.whl

    **Python库graphene_sqlalchemy-2.0.0-py2.py3-none-any.whl详解** `graphene_sqlalchemy`是Python中一个强大的库,它将GraphQL与SQLAlchemy结合在一起,使得开发人员能够轻松地在GraphQL API中使用SQLAlchemy定义...

    PHP与SQL语句常用大全

    if(mysql_query("insert into tb_user(usernc,userpwd,truename,email,qq,tel,ip,address,face,regtime,sex,usertype) values ('".$usernc."','".md5(trim($_POST["userpwd"]))."','".$_POST["truename"]."','".$_...

    Java学生信息管理系统源码(含数据库脚本等).zip

    注意:注册,默认注册普通用户(userType = 2),普通用户无添加用户、删除用户功能;要添加管理员账号(userType = 1)必须在数据库添加。 DumpStructure_and_Data.sql数据库的tb_user表中有学生系统管理员账号:...

    数据接口定义_0.0.2_201805031

    请求参数包括`userId`(当前登录用户的ID)、`token`(用于验证用户是否已登录)、`offset`(查询时跳过的行数)、`limit`(需要查询的行数)、`name`(用户名称,支持模糊查询)和`userType`(用户类型)。...

    hibernate_persistence第02-16章书中源码

    在Hibernate中,你可以通过实现UserType接口来自定义数据类型的映射,使非标准的Java类型能够被持久化。"BKBLX"可能是对“备份策略”的简称,表明这部分内容可能涉及到如何自定义类型以适应特定的备份需求。 7. **...

    有安全需求的选题系统

    2:访问控制:不同类型的user,其权限由usertype规定 3:建立视图用了安全读取数据库中的数据: create view tb_userview as select usernc,usertype,userpwd from tb_user create view tb_userncview as select id,...

    网页短视频管理系统,框架 vs2019 + asp.net webform + sql server

    网页短视频管理系统 框架 vs2019 + asp.net webform + sql server 注意sql server类和access数据库可以使用vs自带的数据库启动,不需要安装庞大的sql安装包。...Id UserName PW Sex Explian UserType

Global site tag (gtag.js) - Google Analytics