zoukankan      html  css  js  c++  java
  • [Kotlin] Mapping between two entities

    For example we have tow Entities:

    package com.virtualpairprogrammers.theater.domain
    
    import javax.persistence.*
    
    @Entity
    data class Performance(
            @Id @GeneratedValue(strategy = GenerationType.AUTO)
            val id: Long,
            val title: String,
            @OneToMany(mappedBy = "performance")
            val bookings: List<Booking>
    )
    package com.virtualpairprogrammers.theater.domain
    
    import javax.persistence.*
    
    @Entity
    data class Booking(
            @Id @GeneratedValue(strategy = GenerationType.AUTO)
            val id: Long,
            // relationship
            // multi seats can exists in one booking
            @ManyToOne
            val seat: Seat,
            @ManyToOne
            val performance: Performance,
            val customerName: String
    )

    Actually, it is not good to put 'bookings, performance, customerName' into constructor. Because it will generate very long sql string.

    A better way:

    package com.virtualpairprogrammers.theater.domain
    
    import javax.persistence.*
    
    @Entity
    data class Performance(
            @Id @GeneratedValue(strategy = GenerationType.AUTO)
            val id: Long,
            val title: String
    ) {
            @OneToMany(mappedBy = "performance")
            lateinit var bookings: List<Booking>
    }
    


    package com.virtualpairprogrammers.theater.domain import javax.persistence.* @Entity data class Booking( @Id @GeneratedValue(strategy = GenerationType.AUTO) val id: Long, val customerName: String ) { // relationship // multi seats can exists in one booking @ManyToOne lateinit var seat: Seat @ManyToOne lateinit var performance: Performance }
  • 相关阅读:
    Spark概述及集群部署
    Scala编程实战
    Scala的高级特性
    Scala基础
    MapReduce优化参数
    HDFS安全模式
    HDFS元数据管理机制
    Hadoop Federation联邦
    Hadoop HA集群的搭建
    Hadoop High Availability高可用
  • 原文地址:https://www.cnblogs.com/Answer1215/p/13945906.html
Copyright © 2011-2022 走看看