hibernate、java、数据库对应类型
引自 https://my.oschina.net/heau/blog/498874
java、数据库对应类型
| 类型名称 | 显示长度 | 数据库类型 | JAVA类型 | JDBC类型索引(int) | 描述 |
| VARCHAR | L+N | VARCHAR | java.lang.String | ||
| CHAR | N | CHAR | java.lang.String | ||
| BLOB | L+N | BLOB | java.lang.byte[] | -4 | |
| TEXT | VARCHAR | java.lang.String | -1 | ||
| INTEGER | INTEGER UNSIGNED | java.lang.Long | |||
| TINYINT | TINYINT UNSIGNED | java.lang.Integer | -6 | ||
| SMALLINT | SMALLINT UNSIGNED | java.lang.Integer | |||
| MEDIUMINT | MEDIUMINT UNSIGNED | java.lang.Integer | |||
| BIT | BIT | java.lang.Boolean | -7 | ||
| BIGINT | BIGINT UNSIGNED | java.math.BigInteger | -5 | ||
| FLOAT | 4+8 | FLOAT | java.lang.Float | ||
| DOUBLE | DOUBLE | java.lang.Double | |||
| DECIMAL | DECIMAL | java.math.BigDecimal | |||
| BOOLEAN | 同TINYINT | ||||
| ID | PK (INTEGER UNSIGNED) | java.lang.Long | |||
| DATE | DATE | java.sql.Date | |||
| TIME | TIME | java.sql.Time | |||
| DATETIME | DATETIME | java.sql.Timestamp | |||
| TIMESTAMP | TIMESTAMP | java.sql.Timestamp | |||
| YEAR | YEAR | java.sql.Date | |||
下面是hibernate官方文档给出的映射表:
Table 8.1. Basic Type Mappings
| Hibernate type | Database type | JDBC type | Type registry |
| org.hibernate.type.StringType | string | VARCHAR | string, java.lang.String |
| org.hibernate.type.MaterializedClob | string | CLOB | materialized_clob |
| org.hibernate.type.TextType | string | LONGVARCHAR | text |
| org.hibernate.type.CharacterType | char, java.lang.Character | CHAR | char java.lang.Character |
| org.hibernate.type.BooleanType | boolean | BIT | boolean java.lang.Boolean |
| org.hibernate.type.NumericBooleanType | boolean | INTEGER, 0 is false, 1 is true | numeric_boolean |
| org.hibernate.type.YesNoType | boolean | CHAR, 'N'/'n' is false, 'Y'/'y' is true. The uppercase value is written to the database. | yes_no |
| org.hibernate.type.TrueFalseType | boolean | CHAR, 'F'/'f' is false, 'T'/'t' is true. The uppercase value is written to the database. | true_false |
| org.hibernate.type.ByteType | byte, java.lang.Byte | TINYINT | byte java.lang.Byte |
| org.hibernate.type.ShortType | short, java.lang.Short | SMALLINT | short java.lang.Short |
| org.hibernate.type.IntegerTypes | int, java.lang.Integer | INTEGER | int java.lang.Integer |
| org.hibernate.type.LongType | long, java.lang.Long | BIGINT | long java.lang.Long |
| org.hibernate.type.FloatType | float, java.lang.Float | FLOAT | float, java.lang.Float |
| org.hibernate.type.DoubleType | double, java.lang.Double | DOUBLE | double java.lang.Double |
| org.hibernate.type.BigIntegerType | java.math.BigInteger | NUMERIC | big_integer |
| org.hibernate.type.BigDecimalType | java.math.BigDecimal | NUMERIC | big_decimal java.math.bigDecimal |
| org.hibernate.type.TimestampType | java.sql.Timestamp | TIMESTAMP | timestamp java.sql.Timestamp |
| org.hibernate.type.TimeType | java.sql.Time | TIME | time java.sql.Time |
| org.hibernate.type.DateType | java.sql.Date | DATE | date java.sql.Date |
| org.hibernate.type.CalendarType | java.util.Calendar | TIMESTAMP | calendar java.util.Calendar |
| org.hibernate.type.CalendarDateType | java.util.Calendar | DATE | calendar_date |
| org.hibernate.type.CurrencyType | java.util.Currency | VARCHAR | currency java.util.Currency |
| org.hibernate.type.LocaleType | java.util.Locale | VARCHAR | locale java.utility.locale |
| org.hibernate.type.TimeZoneType | java.util.TimeZone | VARCHAR, using the TimeZone ID | timezone java.util.TimeZone |
| org.hibernate.type.UrlType | java.net.URL | VARCHAR | url java.net.URL |
| org.hibernate.type.ClassType | java.lang.Class | VARCHAR, using the class name | class java.lang.Class |
| org.hibernate.type.BlobType | java.sql.Blob | BLOB | blog java.sql.Blob |
| org.hibernate.type.ClobType | java.sql.Clob | CLOB | clob java.sql.Clob |
| org.hibernate.type.BinaryType | primitive byte[] | VARBINARY | binary byte[] |
| org.hibernate.type.MaterializedBlobType | primitive byte[] | BLOB | materized_blob |
| org.hibernate.type.ImageType | primitive byte[] | LONGVARBINARY | image |
| org.hibernate.type.BinaryType | java.lang.Byte[] | VARBINARY | wrapper-binary |
| org.hibernate.type.CharArrayType | char[] | VARCHAR | characters char[] |
| org.hibernate.type.CharacterArrayType | java.lang.Character[] | VARCHAR | wrapper-characters Character[], java.lang.Character[] |
| org.hibernate.type.UUIDBinaryType | java.util.UUID | BINARY | uuid-binary, java.util.UUID |
| org.hibernate.type.UUIDCharType | java.util.UUID | CHAR, can also read VARCHAR | uuid-char |
| org.hibernate.type.PostgresUUIDType | java.util.UUID | PostgreSQL UUID, through Types#OTHER, which complies to the PostgreSQL JDBC driver definition | pg-uuid |
| org.hibernate.type.SerializableType | implementors of java.lang.Serializable | VARBINARY | Unlike the other value types, multiple instances of this type are registered. It is registered once under java.io.Serializable, and registered under the specific java.io.Serializable implementation class names. |
hibernate、java、数据库对应类型的更多相关文章
- [原创]java WEB学习笔记81:Hibernate学习之路--- 对象关系映射文件(.hbm.xml):hibernate-mapping 节点,class节点,id节点(主键生成策略),property节点,在hibernate 中 java类型 与sql类型之间的对应关系,Java 时间和日期类型的映射,Java 大对象类型 的 映射 (了解),映射组成关系
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- hibernate Java 时间和日期类型的 Hibernate 映射
基础知识: 在 Java 中, 代表时间和日期的类型包含: java.util.Date 和 java.util.Calendar. 此外, 在 JDBC API 中还提供了 3 个扩展了 java. ...
- 记录使用Hibernate查询bean中字段和数据库列类型不匹配问题
今天在工程中遇到Hibernate查询的时候,bean中的字段和数据库中的字段不符合(bean中有pageTime字段,但是数据库中没有此列)报错问题. 具体问题环境: 在auto_off表中,off ...
- hibernate Java 时间和日期类型 Hibernate 制图
基础知识: 于 Java 于, 型表示的时间和日期包含: java.util.Date 和 java.util.Calendar. 外, 在 JDBC API 中还提供了 3 个扩展了 java.ut ...
- java.sql.Types,数据库字段类型,java数据类型的对应关系
以下转自:http://kummy.itpub.net/post/17165/172850 本文在原文基础上有增减. 本概述是从<JDBCTM Database Access from Java ...
- Oracle数据库date类型与Java中Date的联系与转化
以下是对Java中的日期对象与Oracle中的日期之间的区别与联系做点说明,以期对大家有所帮助.new Date():分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫秒),就是系统当前 ...
- java中存储mysql数据库时间类型
Mysql 与 java 的时间类型 MySql的时间类型有 Java中与之对应的时间类型 date java.sql.Date Datetime ...
- [转]Hibernate不能自动建表解决办法及Hibernate不同数据库的连接及SQL方言
最近开始学Hibernate,看的是李刚的那本<轻量级java ee企业应用实战>.头一个hibernate程序,我原原本本的按照书上例子写下来,同时只是改动了些mysql的连接参数,并且 ...
- 5 -- Hibernate的基本用法 --2 2 Hibernate的数据库操作
在所有的ORM框架中有一个非常重要的媒介 : PO(持久化对象:Persistent Object).持久化对象的作用是完成持久化操作,简单地说,通过该对象可对数据执行增.删.改的操作 ------ ...
随机推荐
- request.getParameter("name")获取参数为null和空字符串的区别
1.获取到的值为空字符串 当url里有name属性,但是没有值的时候,后台用request.getParameter("name")获取到的是空字符串 2.获取到的值为null 当 ...
- Java线程代码实现
线程的Java实现 参考博客:(http://www.importnew.com/20672.html) 1.继承Thread 声明Thread的子类; 这种方法是创建类继承Thread,然后重写Th ...
- Python爬虫之关于登录那些事
常见的登录方式有以下两种: 查看登录页面,csrf,cookie;授权:cookie 直接发送post请求,获取cookie 上面只是简单的描述,下面是详细的针对两种登录方式的时候爬虫的处理方法 第一 ...
- git连接通过ssh连接github
解决 git连接通过ssh连接github 1. 首先产生一个rsa的私钥和公钥 ssh-keygen -t rsa -C "15950093214@163.com" //你的g ...
- web应用配置虚拟路径映射方式一配置不成功问题解决办法
配置过程图: 为了方便输入,先修改Tomcat的conf文件下的server.xml文件 默认端口修改为80 配置完成之后访问报404错误解决办法: 一.如果配置前已经开启了Tomcat服务器,配置完 ...
- Ubuntu Cannot run program "../SDK/build-tools/xxx/aapt": erro = 2 No such file or directory
64位ubuntu Android Studio Gradle编译时出现如下报错: java.io.IOException: Cannot run program "/home/king/ ...
- 原生ajax封装,包含post、method方式
原生ajax封装,包含post.method方式 function ajax(method, url, data, success) { var xhr = null; try { xhr = new ...
- 忘记mysql密码的解决办法--针对windows系统
C:\Users\Administrator>cd C:\Program Files\MySQL\MySQL Server 5.5\bin C:\Program Files\MySQL\MySQ ...
- WordPress上传文件类型限制解决办法
文件类型不符合安全规则.试试别的文件. 这种错误是由于WordPress中做了文件上传格式的限制,这种限制可以在WordPress中的wp-include/functions.php的get_allo ...
- Impala查询详解
Impala的定位是一种新型的MPP查询引擎,但是它又不是典型的MPP类型的SQL引擎,提到MPP数据库首先想到的可能是GreenPlum,它的每一个节点完全独立,节点直接不共享数据,节点之间的信息传 ...