Hibernate - 如何通过Hibernate将java.net.URL存储到数据库中

时间:2010-03-13 12:56:02

标签: java hibernate

我在URL countryURL;课程中有一个字段Country。我想通过Hibernate将其数据存储到数据库中的COUNTRY表中。

我应该在hibernate映射文件中使用哪个Hibernate type

<property column="COUNTRY_URL" name="countryURL" type="..."/>

stringtext类型除外。

5 个答案:

答案 0 :(得分:5)

您可以编写自己的用户类型,但在属性获取器和设置器中执行转换String&lt; - &gt; Url可能更容易:

private void setRawUrl(String s) {
    this.url = new Url(s);
}

private String getRawUrl() {
    return url.toString();
}

并使用rawUrl类型映射属性string

答案 1 :(得分:5)

您可以为映射到varchar列的URL创建org.hibernate.UserType。请参阅参考文档中的Custom value types

答案 2 :(得分:4)

似乎现在有一些时候由Hibernate自己提供的专用基本值类型:org.hibernate.type.UrlType

答案 3 :(得分:0)

我将其存储为String。无需通过实现自定义类型来改变您的生活。也就是说,在URL中将String更改为Country

答案 4 :(得分:0)

没有..存储为字符串做转换我们的自我是错误的OOAD方法..一旦它是一个字符串用户总是可以给任何字符串,这可能不是URL ..更好地使用自定义T