JPA Spring在MariaDB中将实体保存为不同的名称

62lalag4  于 2022-12-19  发布在  Spring
关注(0)|答案(1)|浏览(104)

第一个代码块是实体,第二个代码将标记保存到数据库。

public class Tag {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;

    private String tagName;

    @JsonIgnore
    @ManyToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL, mappedBy = "tags")
    private Set<Board> boards = new HashSet<>();
}
public void getTagList(String tagName) {

    Tag tag = new Tag();
    tag.setTagName(tagName);
    tagRepository.save(tag);
}

每当我发送标记名时,我都会收到一个错误消息 * java. sql. SQLSyntaxErrorException:(conn = 564)"字段列表"中的列"tag_name"未知

  • 我的代码中没有"tag_name",我不知道为什么JPA要用一个稍微不同的名称保存它。

我在数据库中添加了一个名为tag_name的列,它似乎可以工作,并将数据保存到tag_name中。

yx2lnoni

yx2lnoni1#

您可以将DB列名与您的字段匹配,如下所示。

@Column(name="tag_name")
private String tagName;

相关问题