`
youngxu
  • 浏览: 164161 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Oracle10g中char字段在Hibernate中映射设定

    博客分类:
  • Java
阅读更多
环境Hibernate3.3.2GA+Spring2.5.6+Struts2.1.6,数据库Oracle10g,服务器tomcat中TBL_FUNC表的正确映射应该如下:

<?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环境配置 -->
<hibernate-mapping package="pkg">

	<class name="Func" table="TBL_FUNC">
		<id name="funcId" column="FUNC_ID" type="java.lang.Integer" >
			<generator class="native"></generator>
		</id>

		<!-- 基本字段 -->
		<property name="funcName" column="FUNC_NAME" type="java.lang.String" length="128"/>
		<property name="funcDesc" column="FUNC_DESC" type="java.lang.String" length="512"/>
		<property name="ts" type="java.lang.String">
			<column name="TS" sql-type="char" length="19" />
		</property>

	</class>
</hibernate-mapping>


其他TS字段对应Oracle10g数据库中的类型为CHAR(19)。
其中Hibernate的hibernate.hbm2ddl.auto设置为validate后,CHAR字段类型出现一些问题,现整理一下。
1、<property name="ts" type="java.lang.String">
<column name="TS" sql-type="char" length="19" />
</property>

如果设置为
<property name="ts" column name="TS type="java.lang.String" length="19" />
在启动Tomcat时直接报错:
Wrong column type in TBL_FUNC for column TS. Found: char, expected: varchar2(19)
2、根据网上搜索的资料,建议将<property name="ts" column name="TS type="java.lang.String" length="19" />修改为<property name="ts" column name="TS type="java.lang.Character" length="19" />,启动成功后,显示字段的数据只显示一个字符。

最后在网上某论坛的回复中,搜索到上述设置。在此记录下来,以供分享。
分享到:
评论
1 楼 houniao1990 2014-09-16  
楼主,请问用注释怎么写

相关推荐

    Hibernate SQLQuery 查询Oracle char类型结果为一个字符解决方法

    Hibernate SQLQuery 查询Oracle char类型结果为一个字符解决方法 Hibernate SQLQuery 查询Oracle char类型结果为一个字符解决方法 Hibernate SQLQuery 查询Oracle char类型结果为一个字符解决方法 Hibernate SQL...

    java面试宝典

    199、在ORACLE大数据量下的分页解决方法。一般用截取ID方法,还有是三层嵌套方法。 47 200、xml有哪些解析技术?区别是什么? 48 201、你在项目中用到了xml技术的哪些方面?如何实现的? 48 202、用jdom解析xml文件时...

    Java面试宝典2020修订版V1.0.1.doc

    10、servlet中怎么定义forward 和redirect 35 11、过滤器有哪些作用? 35 12、JSP的常用指令? 35 13、JSP和Servlet中的请求转发分别如何实现? 35 14、JSP乱码如何解决? 36 15、session 和 application的区别? 36...

    Java面试宝典2010版

    18、一个用户表中有一个积分字段,假如数据库中有100多万个用户,若要在每年第一天凌晨将积分清零,你将考虑什么,你将想什么办法解决? 19、一个用户具有多个角色,请查询出该表中具有该用户的所有角色的其他用户。...

    最新Java面试宝典pdf版

    18、一个用户表中有一个积分字段,假如数据库中有100多万个用户,若要在每年第一天凌晨将积分清零,你将考虑什么,你将想什么办法解决? 107 19、一个用户具有多个角色,请查询出该表中具有该用户的所有角色的其他...

    千方百计笔试题大全

    199、在ORACLE大数据量下的分页解决方法。一般用截取ID方法,还有是三层嵌套方法。 47 200、xml有哪些解析技术?区别是什么? 48 201、你在项目中用到了xml技术的哪些方面?如何实现的? 48 202、用jdom解析xml文件时...

    Java面试笔试资料大全

    18、一个用户表中有一个积分字段,假如数据库中有100多万个用户,若要在每年第一天凌晨将积分清零,你将考虑什么,你将想什么办法解决? 107 19、一个用户具有多个角色,请查询出该表中具有该用户的所有角色的其他...

    java面试宝典2012

    18、一个用户表中有一个积分字段,假如数据库中有100多万个用户,若要在每年第一天凌晨将积分清零,你将考虑什么,你将想什么办法解决? 117 19、一个用户具有多个角色,请查询出该表中具有该用户的所有角色的其他...

    JAVA面试宝典2010

    18、一个用户表中有一个积分字段,假如数据库中有100多万个用户,若要在每年第一天凌晨将积分清零,你将考虑什么,你将想什么办法解决? 107 19、一个用户具有多个角色,请查询出该表中具有该用户的所有角色的其他...

    Java面试宝典-经典

    18、一个用户表中有一个积分字段,假如数据库中有100多万个用户,若要在每年第一天凌晨将积分清零,你将考虑什么,你将想什么办法解决? 107 19、一个用户具有多个角色,请查询出该表中具有该用户的所有角色的其他...

    java面试题大全(2012版)

    18、一个用户表中有一个积分字段,假如数据库中有100多万个用户,若要在每年第一天凌晨将积分清零,你将考虑什么,你将想什么办法解决? 107 19、一个用户具有多个角色,请查询出该表中具有该用户的所有角色的其他...

    Java面试宝典2012版

    18、一个用户表中有一个积分字段,假如数据库中有100多万个用户,若要在每年第一天凌晨将积分清零,你将考虑什么,你将想什么办法解决? 107 19、一个用户具有多个角色,请查询出该表中具有该用户的所有角色的其他...

    Java面试宝典2012新版

    18、一个用户表中有一个积分字段,假如数据库中有100多万个用户,若要在每年第一天凌晨将积分清零,你将考虑什么,你将想什么办法解决? 107 19、一个用户具有多个角色,请查询出该表中具有该用户的所有角色的其他...

    Java 面试宝典

    4、在 JAVA 中如何跳出当前的多重嵌套循环? .......................................................... 8 5、switch 语句能否作用在 byte 上,能否作用在 long 上,能否作用在 String 上? .. 9 6、short s1 = ...

Global site tag (gtag.js) - Google Analytics