Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >带有Postgis 2.2几何列映射的Hibernate 5.1

带有Postgis 2.2几何列映射的Hibernate 5.1
EN

Stack Overflow用户
提问于 2016-04-20 04:57:03
回答 1查看 1.2K关注 0票数 10

hibernate 5.1空间文档尚未发布(AFAIK),我试图将具有JST几何学字段的实体持久化到PostgreSQL 9.5 +PostGIS2.2,但没有任何结果。

我还注意到hibernate-core-5.1.0中没有org.hibernate.spatial包。我尝试了以下注释的变体:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@javax.persistence.Column(name = "the_geom", columnDefinition = "Geometry")
public com.vividsolutions.jts.geom.Geometry geom;

当columnDefinition设置为" point“时,我得到"the_geom”列的类型为point,而表达式的类型为bytea“。在hibernate空间4文档中,据说5+版本不需要@Type注释,但是应该使用什么呢?如何将geom存储为有效的Postgis几何?

EN

回答 1

Stack Overflow用户

发布于 2016-05-08 10:25:58

在寻找了一段时间之后,我找到了一个适合我需要的解决方案(我也希望你的解决方案)。由于使用版本5,所有的jtsgeolatte几何类型都能够由hibernate直接管理,所以您应该配置hibernate来管理这些类型。

在我的场景中,我管理spring @Configuration类中的所有配置:在那里,如这里的“示例9”所示,我决定使用MetadataBuilder方法如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@Bean
public static MetadataBuilder metadataBuilder() {

    ServiceRegistry standardRegistry = new StandardServiceRegistryBuilder().build();
    MetadataSources sources = new MetadataSources( standardRegistry );
    return sources.getMetadataBuilder();
}

@Bean
public static MetadataBuilder spatialConfiguration() {

    JTSGeometryType jtsGeometryType = new JTSGeometryType(PGGeometryTypeDescriptor.INSTANCE);
    return PersistenceConfiguration.metadataBuilder().applyBasicType(jtsGeometryType);
}

这样,我的所有jts几何图形(也有其他的geolatte几何图形)都被正确地映射为在我的数据库模型中声明。

希望这能帮到你

达里奥。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36744527

复制
相关文章
如何在 Python 中创建元组字典
本演练是关于在 Python 中创建元组字典的全部内容。此数据结构存储键值对。通过组合字典和元组,可以创建元组字典。好处是以结构化格式组织且可访问的数据。可以轻松表示每个键的多个值,例如学生成绩或联系信息。让我们看看它如何有效地存储和检索复杂数据。
很酷的站长
2023/08/11
2630
如何在 Python 中创建元组字典
创建 WebRTC 会话
一WebRTC 是一套基于 Web 的实时通信解决方案,通过浏览器内置的 API 来支持音视频通道的搭建。
派大星在吗
2021/12/05
5.6K0
如何在Python中创建天气警报系统
通过阅读这篇文章,你将学会用Python创建一个天气警报系统,当它预测未来几小时内天空将下雨/下雪时,它会向多个收件人发送一封电子邮件通知。电子邮件通知包含其他信息,如预测的温度和湿度。
HuangWeiAI
2020/12/18
2.6K0
python变量'创建,引用,销毁'
引用: 当参数被引用,python引用计数器自增1 python中列表和字典引用示例 列表: def add_list(p): p+=[3] 或 p=p+[3] //print结果不一致,+、+=实现不同方法 p=[1,2] add_list(p) print(p) 字典: def add_dictionary(): b=a={‘one’:1,’two’:2} print(‘{}’.format(a[‘one’])) b[‘one’]=2 b[‘two’]=1 print(‘{}’.format(b[‘one’]))
py3study
2020/01/07
1.9K0
Python变量之白首如新,倾盖如故
python中的变量 变量:将运算的中间结果暂存到内存中,方便后续程序调用。 变量的命名规则: 1、变量名由字母、数字、下划线组成。 2、变量名可以用字母、下划线开头,但是不能以数字开头。 3、变量名是区分大小写的。 4、变量名不能使用关键字。 5、变量名最好不要用中文或者拼音。 6、变量名最好起的要有意义,具有描述性。 7、变量名最好不要太长。 8、变量名最好使用驼峰命名法或者下划线命名法。
py3study
2020/01/17
5750
python中画雷达图_如何在Excel中创建雷达图
参考链接: Python | 使用XlsxWriter模块在Excel工作表中绘制雷达图
用户7886150
2020/12/23
2.3K0
如何在js中创建对象
七夕临近了,没有对象的来创建一个吧 使用对象字面量: const o = { name: "zehan", greeting() { return `Hi, 我是${this.name}`; } }; o.greeting(); // "Hi, zehan" 使用构造函数: function Person(name) { this.name = name; } Person.prototype.greeting = function () { return `Hi, 我是
ZEHAN
2020/09/23
7.6K0
如何在Dynamo中创建UI
本文介绍了如何在Dynamo中创建UI,通过使用WPF技术实现了窗口的创建和交互。首先介绍了IronPython和Dynamo的基础知识,然后讲解了实现原理和准备工作。最后通过具体的操作步骤和代码示例讲解了如何在Dynamo中创建UI。
企鹅号小编
2018/01/05
2.1K0
如何在Dynamo中创建UI
如何在Mac中创建MiniKube
Minikube是一个工具,可以在本地轻松运行Kubernetes。 Minikube在笔记本电脑的VM中运行单节点Kubernetes集群,供希望尝试Kubernetes或日常开发的用户使用。
方志朋
2022/05/08
2.4K0
如何在Mac中创建MiniKube
Python动态创建变量的方法
Python内置函数exec()可以用来执行Python代码或内置函数compile()编译的代码对象,例如 >>> exec('print("hello world")') hello world >>> t = compile('print("hello world")', 'temp.tmp', 'exec') >>> t <code object <module> at 0x000001ED08FE5300, file "temp.tmp", line 1> >>> exec(t) hello wo
Python小屋屋主
2018/04/16
1.7K0
如何在Ubuntu14.04中创建Python虚拟环境
在Ubuntu14.04中安装Python相对比较容易些,最简单的安装方法就是apt-get安装了,具体的教程可以戳这篇文章:在Ubuntu14.04中如何安装Python3和切换py2和py3环境。今天小编给大家分享一下,如何在Ubuntu14.04创建Python虚拟环境,具体的教程如下。
Python进阶者
2018/09/16
1.6K0
如何在Ubuntu14.04中创建Python虚拟环境
在Ubuntu14.04中安装Python相对比较容易些,最简单的安装方法就是apt-get安装了,具体的教程可以戳这篇文章:在Ubuntu14.04中如何安装Python3和切换py2和py3环境。今天小编给大家分享一下,如何在Ubuntu14.04创建Python虚拟环境,具体的教程如下。
Python进阶者
2018/10/18
1.2K0
如何在Ubuntu14.04中创建Python虚拟环境
聊聊如何在K8S中实现会话保持
故事的起因是朋友所在的部门最近基于auth2实现单点登录,他们在测试环境单点登录,运行得好好的,但他们把单点登录上到预发布环境,发现单点登录不好使了。他们有部分系统是以授权码式接入,发现第一次登录拿到授权码进行换取token时,会提示授权码失效。而他们测试环境和预发布环境的代码是一样的。
lyb-geek
2023/03/14
1.4K0
聊聊如何在K8S中实现会话保持
如何在 WordPress 中创建联系表格?
假设我们有一个 WordPress 网站,并且我们想要添加一个功能,让他们可以联系他们所拥有的查询。我们可以通过使用网站上的 WordPress 插件添加联系表格来做到这一点。因此,这将为你的访问者提供一种与你联系的方式,当他们需要帮助或有什么要分享的时候。
海拥
2022/12/19
2.9K0
如何在 WordPress 中创建联系表格?
如何在 WordPress 中创建登录页面
登陆页面: 登陆页面是为特定受众制定的具有特定目标的目标页面,可以描述为“一页一目的”。登陆页面必须有一个“号召性用语”,并牢记特定目标。成功的着陆页是具有更高转化率、更高参与度和更高质量潜在客户的页面。
海拥
2022/10/04
2.9K0
如何在 WordPress 中创建登录页面
如何在git中创建新分支
介绍 Git 是一个开源版本控制系统,用于在软件开发过程中跟踪更改。它的相互独立的分支模型使其脱颖而出。分支可以基于以前版本的软件来保持当前进度的完整性,同时处理错误修复或新功能。 在本地创建 Git 存储库 要创建新的 Git 存储库,请在终端中输入以下命令: mkdir rumenz cd rumenz git init 这将在 rumenz 目录中创建并初始化一个新的 Git 存储库。创建一个新的降价文件并添加一行文本: echo This is a line of text > rumenz.md
入门笔记
2022/06/02
2.9K0
python中的变量
  什么是变量?总结不好也记不得它的完整定义,就举个例子来便于自己学习总结吧。假如我们要计算1+2的值,那么首先在内存中要存储两个值,一个是:1,一个是:2。内存中有了这两个值,计算的时候就会找到它们进行计算。但是我们可能是计算任意两个数相加,数学中我们常用 x+y 来表示两个任意的数相加。假如在程序中我们用a+b来表示两个数相加,那么当a=1,b=2时,就可以计算出1+2=3,此时这个a和b就是变量,它们也可以等于其他数值,结果也是随着数值的改变而改变的。a和b的值能变动,就叫变量。刚才说了内存中存了1和2,那么a和b与内存中的1和2有什么联系呢,可以理解为a=1,b=2就是把内存中的1取个名字叫a,内存中的2取个名字叫b。这样按名字就能找到它的值了。
py3study
2020/01/19
2.5K0
python中的变量
点击加载更多

相似问题

会话变量,如Python中的PHP

21

Python会话(如php)类

21

如何在DotNetNuke皮肤中创建会话变量?

10

如何在express中创建全局会话变量

112

创建会话时在Grails中创建会话变量

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文