小编Vla*_*dys的帖子

Docker 差异 postgres:12 来自 postgres:12-alpine

Docker 集线器包含 Postgres 数据库的多个版本(标签),例如:

  • 12.3、12、最新
  • 12.3-高山、12-高山、高山-...

postgres 12.3 版和 12.3-alpine 之间有什么区别?

postgresql docker

5
推荐指数
3
解决办法
3212
查看次数

@ManyToMany关系不保存

我有一些@ManyToMany关系的实体:

@ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
@JoinTable(name = "buses_drivers",
        joinColumns = @JoinColumn (name = "driver_id_inner", referencedColumnName = "driver_id"),
        inverseJoinColumns = @JoinColumn (name = "bus_id_inner", referencedColumnName = "bus_id"))
private List<Bus> buses;
Run Code Online (Sandbox Code Playgroud)

@ManyToMany(mappedBy = "buses", fetch = FetchType.EAGER, cascade = CascadeType.ALL)
private List<Driver> drivers;
Run Code Online (Sandbox Code Playgroud)

Driver用某些Bus型号执行保存模型时,一切正常.表buses_drivers存储这些实体的所有键.但是当Bus使用驱动程序保存模型时,表格不会更改.我认为inverseJoinColmns映射问题.

java orm many-to-many hibernate jpa

3
推荐指数
2
解决办法
3466
查看次数

如何减少未使用的ArrayList容量

在一些转换ArrayList有3个元素后,ArrayList大小最大然后是3.因此NullPointerException在使用forEachcircle 时会发生.

如何避免这种情况?我的意思是不!=null检查.

例:

List<String> busesIdToRemove = driverWrapper.getBusesIdToRemove(); 
Run Code Online (Sandbox Code Playgroud)

列表包含id的那些实体,将被删除.发生错误:

for (String id : busesIdToRemove) { 
Long longId = Long.valueOf(id); //here. Because id is null ... 
} 
Run Code Online (Sandbox Code Playgroud)

但实际上,list只包含非空值的元素.

例如[index,value].

1,"41";

4,"50"......

有关索引[0],[2],[3]的元素的信息在调试器中不存在,并且对于get(0)例如方法返回null .

解决问题:arrayList.removeAll(Collections.singleton(null));

java arraylist nullpointerexception

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