Spring Boot One To Many Mapping Demo With H2 database

There are three basic entity relationships:-

  • One-to-One
  • One-to-Many/Many-to-one
  • Many-to-Many

A Single post can have multiple comments by this way we can apply one-to-many Mapping

Installation

Clone the repo from here:- Click here

Import Maven based project in any of your Favourite IDE.

./mvnw spring-boot:run

Enter fullscreen mode Exit fullscreen mode

Output

Open in Browser

Access H2 Database.

http://localhost:8080/h2-console

Enter fullscreen mode Exit fullscreen mode

Usage

MainClass.java

run() method is run when the application is started. The data is added in the database.

    Post post = new Post("Spring Boot Post Title","Spring Boot Post Description");
        Comment comment1 = new Comment("Thanks for uploading");
        Comment comment2 = new Comment("Comment2 test");
        Comment comment3 = new Comment("Comment3 test");

        post.getComments().add(comment1);
        post.getComments().add(comment2);
        post.getComments().add(comment3);

        postRepository.save(post);

Enter fullscreen mode Exit fullscreen mode

Post.java

Id column is used to map the post and comments together.

@OneToMany(cascade = CascadeType.ALL)
    @JoinColumn(name = "post_Comment_id",referencedColumnName = "id")
    List<Comment> comments = new ArrayList<>();

Enter fullscreen mode Exit fullscreen mode

Output

Comments are mapped by the ID of the Post on which they are commented. As you can see in the below images.

图片[1]-Spring Boot One To Many Mapping Demo With H2 database - 拾光赋-拾光赋

Configuration

application.properties

spring.jpa.show-sql = true

# Enabling H2 Console spring.datasource.url=jdbc:h2:mem:testdb
spring.jpa.defer-datasource-initialization=true
spring.h2.console.enabled=true

# Enable Web Access spring.h2.console.settings.web-allow-others=true

Enter fullscreen mode Exit fullscreen mode

原文链接:Spring Boot One To Many Mapping Demo With H2 database

© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容