我从Hibernate 4.2.7和PostgreSQL 9.3.1开始了我的示例项目,一切进展顺利。
目前,我想使用INET PostgreSQL类型,但无法使用Hibernate进行映射。
我收到此hibernate错误: 无法确定类型:inet,在表:DEVICE_IP_ADDRESS,用于列…
我使用 org.hibernate.dialect.PostgreSQLDialect 和hbm.xml配置文件。
我的hibernate映射文件:
<property name="ipAddress" type="inet"> <column name="IP_ADDRESS" not-null="true" /> </property>
我问谷歌,但找不到任何可用的解决方案。你可以帮帮我吗?
谢谢!
编辑:如果我想使用“额外的” postgresql类型和PostGIS类型,您认为我需要使用哪种类型的ORM实现?
还是我需要使用简单的JDBC?
最近,我在Hibernate 3和Postgres 9中遇到了类似的问题。由于hibernate没有为postgres中的String Array提供到Java String []的内置映射,因此我最终实现了一个自定义映射类。您可以尝试执行以下步骤。
下面的方法实现至关重要。
完成上述操作后,我们只需要将HBM.xml中的属性类型设置为此类,即PgInet。
对于自定义类实现,请尝试参考现有的类型实现类。您应该能够找到类文件。使用下面的链接作为参考。
http://grepcode.com/file/repo1.maven.org/maven2/hibernate/hibernate/2.1.8/net/sf/hibernate/type/ArrayType.java
希望这可以帮助。
谢谢。