小编use*_*383的帖子

jpa中批量删除的最佳做法是什么

我正在尝试在我的实体中进行批量删除,我认为最好的解决方案就是一起去CriteriaDelete.但是CriteriaDelete没有级联(至少不适合我).

所以似乎只有我要做的解决方案是先选择,然后单独删除每个元素.这对我来说似乎没有错.

有人有更好的想法如何批量删除?它真的更好吗?

如果它有助于我使用eclipselink 2.5.2.

java jpa eclipselink jpa-2.1

4
推荐指数
2
解决办法
1万
查看次数

如何在匕首中创建地图的值

在我的nano项目中,我决定用命令映射替换大讨厌的switch语句.现在我正在整理我的代码,我想创建提供程序,为我提供填充的地图.

我想知道,最佳做法是什么.最初我在考虑这样的事情:

@Provides 
ActionResolver provideActionResolver(Dependency dep1,Dependency dep2) {
  Map<SomeEnum,Action> map = new HashMap<>();
  map.put(SomeEnum.A1,new Action1(dep1);
  map.put(SomeEnum.A2,new Action2(dep2);
  return new ActionResolver(map);
}
Run Code Online (Sandbox Code Playgroud)

我想知道这是正确的方法,最好的做法是什么.

java dagger

3
推荐指数
1
解决办法
425
查看次数

如何将OpenLayers中VectorFeatures或Layer的Coorinates从一个投影转换为另一个投影?

我在我的项目中使用GWT-OpenLayers,我在转换坐标方面遇到了问题.我知道如何为单点做到这一点,transform(from,to)但我可以在不申请每一点的情况下这样做吗?现在我正在解析KLM数据以获取功能列表,我将它们添加到新的矢量中

gwt openlayers gwt-openlayers

2
推荐指数
1
解决办法
313
查看次数

如何在实体上强制执行版本更新?

在我正在开发的应用程序中,我有数据结构:

                  Bucket [1] ------ [Many] Element
Run Code Online (Sandbox Code Playgroud)

现在我可以查看何时可以添加删除和修改元素.现在我有多个用户正在编辑相同的存储桶的情况,他们可以搞砸其他编辑.我想通过每次保存数据时检查和更新存储桶版本来解决此问题.

JPA有自己的版本,所以我打算重用它.但是当JPA元素更新时,JPA心甘情愿地不会更新Bucket版本.有没有一种好的方法如何在JPA中对实体实施版本更新?

目前我发现了一些建议,比如创建虚拟字段,拥有自己的版本字段,或者分离和合并实体.他们似乎没有对我好,有什么更好的吗?

如果有帮助,我正在使用带有弹簧数据的eclipse链接.

java jpa spring-data-jpa jpa-2.1

2
推荐指数
1
解决办法
78
查看次数

如何使用sring boot plugin 2.0.x从一个具有不同依赖关系的gradle项目生成2个jar

我正在尝试将项目迁移到最新版本的Spring和Spring Boot。一切都进展顺利,直到我遇到这个问题。

我们的一个项目会生成最终版本的Jar的两个版本,一个版本可以以最少的依赖项运行,而另一个版本则具有所有额外的模块。

当我使用Spring Boot版本1.5.x时,解决方案很简单,我们使用了“ customConfiguration”

当我使用旧插件时,我的配置文件或多或少都像那样

bootRepackage{ 
    customConfiguration = "addons"
}


dependencies {
    compile "my.org:core-lib:1.0.0"
    addons  "my.org:extra-lib:1.0.0"
}
Run Code Online (Sandbox Code Playgroud)

现在bootRepackagebootJar不持有财产的地方所取代customConfiguration。这是可以在最新版本的插件中完成的吗,如果是的话,有人可以向我指出正确的方向吗?

gradle spring-boot gradle-plugin spring-boot-gradle-plugin

2
推荐指数
1
解决办法
402
查看次数

使用流API分组时,多个组中的单个元素

我正在查看一些旧代码,在其中对元素进行分组。看起来或多或少是这样的:

Map<Long,List<Items>> groupedItems = ...
for (long groupid : groups){
    for (Item item :items){
        if (isGroupAccepting(item.getId(),groupid) || groupid == item.getGroup()) {
            groupedItems.get(groupid).add(item);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我计划使用流API中的分组替换它,但是我遇到了麻烦。对于我的第二个条件,它工作正常,但是如何处理第一个条件,即应将项添加到接受此类项的每个组中?实际上有可能吗,还是我在这里与失落的原因作斗争?

java java-8 java-stream

2
推荐指数
1
解决办法
79
查看次数

为什么这种方法错了?

这个问题更像是拼图而不是真实的问题,

这个方法有什么问题:

public boolean areEqual(Long a, long b)
{
return a==b;
}
Run Code Online (Sandbox Code Playgroud)

java

0
推荐指数
1
解决办法
65
查看次数

插入多行和另一个表中的一列

我有两张桌子

 CREATE TABLE table1 (
    id bigint NOT NULL,
    name character varying(255),
    CONSTRAINT table1_pkey PRIMARY KEY (id)
 );

 CREATE TABLE table2 (   
     id bigint NOT NULL,
     name character varying(255),
     table1_id bigint,
     CONSTRAINT table2_pkey PRIMARY KEY (id), 
     CONSTRAINT fk_table1_table2 FOREIGN KEY (table1_id) 
     REFERENCES table1 (id) MATCH SIMPLE
 );
Run Code Online (Sandbox Code Playgroud)

现在我想做的是为 table1 中的每个条目添加 table2 中的条目

即如果我的表 1 有条目

|id | name   |
|1  | First  | 
|2  | Second | 
|3  | Third  | 
Run Code Online (Sandbox Code Playgroud)

我需要在 table2 中创建三个条目

insert into table2 (id,name,table2_id) values (nextval('table2_seq'),'new …
Run Code Online (Sandbox Code Playgroud)

sql postgresql

0
推荐指数
1
解决办法
3234
查看次数