小编Gar*_*cía的帖子

JPA + Hibernate + Spring + OneToMany删除级联

我已经阅读了一些相关的问题,但它们与我的问题并不完全相同.

我正在使用JPA + Hibernate + Spring,我想做一些我不确定是否可以使用config的东西.

我的域类具有或多或少的复杂关系.有许多元素与一个元素相关(如果它是一个树,许多元素是一个元素的儿子).

就像是:

@Entity
class Foo {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;

    @ManyToOne
    @JoinColumn(name = "PARENT_ID")
    private Foo parentNode;
    ...
}
Run Code Online (Sandbox Code Playgroud)

Wich会得到一张表:

Foo id    parent_id
1
2         1 
3         1
Run Code Online (Sandbox Code Playgroud)

当我与ID = 1删除行欲删除与ID = 2和id = 3行(它可以是递归的,与PARENT_ID = 2和PARENT_ID = 3的元件将被删除以及).

对于某些限制,我只能在父子方面与parent_id引用建立关系.

我的问题是:是否可以使用JPA或Hibernate配置执行此操作,还是需要执行一些递归功能来删除所有子项和所有父项?

我尝试过:

@OneToMany(name = "PARENT_ID", cascade = CascadeType.REMOVE)
Run Code Online (Sandbox Code Playgroud)

我读过可能使用Hibernate注释.

如果有人能给我一些线索,我就失去了这一点.

编辑1

是否可以这样做:

@Entity
class Foo {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;

    @ManyToOne
    @JoinColumn(name="PARENT_ID")
    private Foo parentNode;

    @OneToMany(fetch = FetchType.LAZY, …
Run Code Online (Sandbox Code Playgroud)

spring annotations hibernate jpa spring-mvc

21
推荐指数
2
解决办法
6万
查看次数

宣传单+本地.osm文件

我一直在使用leaflet.js来渲染地图,就像它在传单开始页面中所示:

L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', { ...
Run Code Online (Sandbox Code Playgroud)

我从openstreetmap下载了一个.osm文件(map.osm),我正在试图弄清楚如何从传单中使用这个文件:

L.tileLayer('file:///./map.osm/{z}/{x}/{y}.png/{z}/{x}/{y}.png', { ...
Run Code Online (Sandbox Code Playgroud)

在其他情况下,我使用Mobile atlas creator下载地图图层并在传单中使用它们.它在目录结构中下载选定的地图,如zoom-x-y .png文件(如:file_system\local_maps_dir\13\4049\2999.png,其中13是缩放范围4049和经度2999).

但现在我需要加载或使用带有传单的这些.osm文件.

有没有办法做到这一点?我需要转换这个.osm文件吗?

谢谢大家的时间.

javascript openstreetmap leaflet

6
推荐指数
1
解决办法
3121
查看次数