打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
hibernate tools 中 jdbc
我在使用 hibernate-tools 反向生成实体的时候, 数据库类型是 tinyint(1)(数据库中时非空属性, 可控属性可以生成为 Byte), 生成的实体属性始终是 boolean , 不太喜欢, 找了些资料, 解决此办法: 在数据库的连接 url 的后面加上 tinyInt1isBit=false 即可
如:
MySQL Type NameReturn value ofGetColumnClassNameReturned as Java Class
BIT(1) (new in MySQL-5.0)BITjava.lang.Boolean
BIT( > 1) (new in MySQL-5.0)BITbyte[]
TINYINTTINYINTjava.lang.Boolean if the configuration property tinyInt1isBit is set to true (the default) and the storage size is 1, orjava.lang.Integer if not.
下面是一些类型转换的例子:
<type-mapping>
<sql-type jdbc-type="INTEGER" hibernate-type="Integer"></sql-type>
<sql-type jdbc-type="DOUBLE" hibernate-type="Double"></sql-type>
<sql-type jdbc-type="FLOAT" hibernate-type="Float"></sql-type>
<sql-type jdbc-type="TINYINT"  hibernate-type="Integer"></sql-type>
<sql-type jdbc-type="TIMESTAMP" hibernate-type="Timestamp"></sql-type>
</type-mapping>
Hibernate映射类型java类型标准SQL类型
integerjava.lang.IntegerINTEGER
longjava.lang.LongBIGINT
shortjava.lang.ShortSMALLINT
floatjava.lang.FloatFLOAT
doublejava.lang.FloatDOUBLE
big_decimaljava.math.BigDecimalNUMERIC
characterjava.lang.StringCHAR(1)
stringjava.lang.StringVARCHAR
bytebyte或java.lang.ByteTINYINT
booleanboolean或java.lang.Boolean  BIT
yes_no    boolean或java.lang.Booleanchar(1)('Y'/'N')
true_falseboolean或java.lang.Booleanchar(1)('Y'/'N')
datejava.util.Date或java.sql.DateDATE
timejava.util.Date或java.sql.Timetime
timestampjava.util.Date或java.sql.timestampTIMESTAMP
calendarjava.util.CalendarTIMESTAMP
calendar_datejava.util.Calendardate
binarybyte[]varbinary或blob
textjava.lang.Stringclob
serializablejava.io.Serializable实例varbinary或blob
clobjava.sql.Clobclob
blobjava.sql.Blobvarbinary或blob
classjava.lang.Classvarchar
localejava.util.Localevarchar
timezonejava.util.TimeZonevarchar
currencyjava.util.Currencyvarchar
Hibernate的TypeFactory的类型内置配置打印如下:
1: java.util.TimeZone---------------------org.hibernate.type.TimeZoneType
2: [Ljava.lang.Byte;---------------------org.hibernate.type.WrapperBinaryType
3: char---------------------org.hibernate.type.CharacterType
4: java.lang.Boolean---------------------org.hibernate.type.BooleanType
5: java.lang.Long---------------------org.hibernate.type.LongType
6: java.sql.Timestamp---------------------org.hibernate.type.TimestampType
7: long---------------------org.hibernate.type.LongType
8: java.lang.Float---------------------org.hibernate.type.FloatType
9: float---------------------org.hibernate.type.FloatType
10: timezone---------------------org.hibernate.type.TimeZoneType
11: time---------------------org.hibernate.type.TimeType
12: imm_serializable---------------------org.hibernate.type.AdaptedImmutableType
13: java.math.BigInteger---------------------org.hibernate.type.BigIntegerType
14: java.lang.Double---------------------org.hibernate.type.DoubleType
15: byte---------------------org.hibernate.type.ByteType
16: java.util.Locale---------------------org.hibernate.type.LocaleType
17: java.lang.Class---------------------org.hibernate.type.ClassType
18: java.sql.Time---------------------org.hibernate.type.TimeType
19: boolean---------------------org.hibernate.type.BooleanType
20: java.io.Serializable---------------------org.hibernate.type.SerializableType
21: text---------------------org.hibernate.type.TextType
22: java.lang.Object---------------------org.hibernate.type.AnyType
23: int---------------------org.hibernate.type.IntegerType
24: imm_binary---------------------org.hibernate.type.AdaptedImmutableType
25: class---------------------org.hibernate.type.ClassType
26: image---------------------org.hibernate.type.ImageType
27: java.lang.Integer---------------------org.hibernate.type.IntegerType
28: dbtimestamp---------------------org.hibernate.type.DbTimestampType
29: java.lang.Short---------------------org.hibernate.type.ShortType
30: imm_calendar_date---------------------org.hibernate.type.AdaptedImmutableType
31: java.sql.Blob---------------------org.hibernate.type.BlobType
32: double---------------------org.hibernate.type.DoubleType
33: java.sql.Date---------------------org.hibernate.type.DateType
34: big_integer---------------------org.hibernate.type.BigIntegerType
35: java.lang.Byte---------------------org.hibernate.type.ByteType
36: materialized_clob---------------------org.hibernate.type.MaterializedClobType
37: yes_no---------------------org.hibernate.type.YesNoType
38: char[]---------------------org.hibernate.type.CharArrayType
39: imm_dbtimestamp---------------------org.hibernate.type.AdaptedImmutableType
40: java.util.Currency---------------------org.hibernate.type.CurrencyType
41: binary---------------------org.hibernate.type.BinaryType
42: java.util.Calendar---------------------org.hibernate.type.CalendarType
43: locale---------------------org.hibernate.type.LocaleType
44: clob---------------------org.hibernate.type.ClobType
45: object---------------------org.hibernate.type.AnyType
46: date---------------------org.hibernate.type.DateType
47: imm_time---------------------org.hibernate.type.AdaptedImmutableType
48: [Ljava.lang.Character;---------------------org.hibernate.type.CharacterArrayType
49: currency---------------------org.hibernate.type.CurrencyType
50: character---------------------org.hibernate.type.CharacterType
51: timestamp---------------------org.hibernate.type.TimestampType
52: short---------------------org.hibernate.type.ShortType
53: calendar_date---------------------org.hibernate.type.CalendarDateType
54: java.util.GregorianCalendar---------------------org.hibernate.type.CalendarType
55: java.sql.Clob---------------------org.hibernate.type.ClobType
56: java.lang.Character---------------------org.hibernate.type.CharacterType
57: big_decimal---------------------org.hibernate.type.BigDecimalType
58: Character[]---------------------org.hibernate.type.CharacterArrayType
59: serializable---------------------org.hibernate.type.SerializableType
60: calendar---------------------org.hibernate.type.CalendarType
61: materialized_blob---------------------org.hibernate.type.MaterializedBlobType
62: Byte[]---------------------org.hibernate.type.WrapperBinaryType
63: imm_date---------------------org.hibernate.type.AdaptedImmutableType
64: [B---------------------org.hibernate.type.BinaryType
65: integer---------------------org.hibernate.type.IntegerType
66: java.lang.String---------------------org.hibernate.type.StringType
67: [C---------------------org.hibernate.type.CharArrayType
68: java.util.Date---------------------org.hibernate.type.TimestampType
69: true_false---------------------org.hibernate.type.TrueFalseType
70: blob---------------------org.hibernate.type.BlobType
71: imm_calendar---------------------org.hibernate.type.AdaptedImmutableType
72: imm_timestamp---------------------org.hibernate.type.AdaptedImmutableType
73: string---------------------org.hibernate.type.StringType
74: java.math.BigDecimal---------------------org.hibernate.type.BigDecimalType
75: byte[]---------------------org.hibernate.type.BinaryType
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
java数据类型,hibernate数据类型,标准sql数据类型之间的对应表
11.1 Hibernate的内置映射类型
Hibernate类型映射之内置类型映射
org.hibernate.MappingException: Could not determine type for: java.lang.string
Java数据类型和MySql数据类型对应一览
Java和mysql的数据类型对应
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服