小编dma*_*nce的帖子

Spring boot JPA保存多对多关系

我试图存储多对多关系,但它不存储该关系。

以下代码生成了 3 个表。

士兵、勋章和士兵_勋章。

该服务只需使用 save(soldier) 调用 CRUD 接口即可。

它正确存储了士兵,但没有填充士兵奖章表中的任何行。

这是我发送到服务器的 JSON:

{
        "abbreviatedSequence": "XDF",
        "medals": [
            {
                "name": "Purple",
                "id": 1
            },
            {
                "name": "Red",
                "id": 2
            }
        ],
        "sequence": "XDFREE",
        "name": "Savier"
    }
Run Code Online (Sandbox Code Playgroud)

员工.java

@Entity(name="employees")
@Inheritance(strategy=InheritanceType.SINGLE_TABLE)
public class Employee {
    @Id
    @GeneratedValue(generator="increment")
    @GenericGenerator(name="increment", strategy = "increment")
    private Long id;
    
    private String name;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void …
Run Code Online (Sandbox Code Playgroud)

java spring-data spring-boot

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

Spring Boot JPA findByUuid

我想在数据库中查询不是主键的给定 UUID。我无法让它工作:

这是我的 Node 类。我的 PK 是一个长自动增量,我有一个名为 uuid 的字段,用于存储在数据库中保存新节点时生成的 UUID 密钥。

更新:即使我通过 id 获得一个节点,然后我使用它的节点 uuid 来调用 findByUuid 函数,我也得到了一个空值

    Node n = nodeService.getNodeByNodeId(1L);
    return nodeService.getNodeByNodeUuid(n.getApiKey());
Run Code Online (Sandbox Code Playgroud)

节点

@Entity
@Table(name="node")
public class Node {

@Id
@Column(name = "ID")
@GeneratedValue(strategy = GenerationType.AUTO, generator = "node_seq")
@SequenceGenerator(name = "node_seq", sequenceName = "node_seq", allocationSize = 1)
private Long id;

@Column(name = "uuid", updatable = false, nullable = false, unique=true)
private UUID uuid;


public UUID getUuid() {
    return uuid;
}

public void setUuid(UUID uuid) {
    this.uuid = …
Run Code Online (Sandbox Code Playgroud)

uuid spring spring-data-jpa

5
推荐指数
2
解决办法
3545
查看次数

Perl DateTime持续时间格式不显示年份

我在计算两个日期之间的差值时遇到麻烦。

my $todayDate = DateTime->now;
my @updateDateFields = split /\//, $proteinObj->{lastUpdate}; #yyyy/mm/dd

my $updateDateTime = DateTime->new(
    year => @updateDateFields[0],
    month=> @updateDateFields[1],
    day=> @updateDateFields[2]
);

my $daysSinceLastUpdate = $todayDate - $updateDateTime;

my $dfd = DateTime::Format::Duration->new(pattern => '%Y years, %m months, %e days');
print "Last update was: ". $dfd->format_duration($daysSinceLastUpdate). " ago.\n";
Run Code Online (Sandbox Code Playgroud)

输出是这样的:

最后更新日期:2015/01/13最近更新为:0年22个月0天前。

它不会显示1年10个月0天前。

perl datetime difference

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