2017-04-02 114 views

回答

0

請分享您的努力/代碼與您的問題一直。

據對我來說這可以用許多情況下

一個情景會是什麼樣的走,

用戶有一個購物車,購物車就會有很多產品,很多產品屬於許多車

代碼放在下面,你可以繼續前進,需要的參數添加到實體。

用戶實體

import javax.persistence.Column; 
import javax.persistence.Entity; 
import javax.persistence.FetchType; 
import javax.persistence.GeneratedValue; 
import javax.persistence.GenerationType; 
import javax.persistence.Id; 
import javax.persistence.OneToOne; 
import javax.persistence.Table; 

@Entity 
@Table(name = "USERS") 
public class User { 

    @Id 
    @Column(name = "ID") 
    @GeneratedValue(strategy = GenerationType.AUTO) 
    private Long id; 

    @Column(name = "USER_NAME") 
    private String userName; 

    @OneToOne(mappedBy = "user", fetch = FetchType.LAZY) 
    private Cart cart; 

    public Long getId() { 
     return id; 
    } 

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

    public String getUserName() { 
     return userName; 
    } 

    public void setUserName(String userName) { 
     this.userName = userName; 
    } 

    public Cart getCart() { 
     return cart; 
    } 

    public void setCart(Cart cart) { 
     this.cart = cart; 
    } 

} 

車實體

import java.util.Set; 

import javax.persistence.CascadeType; 
import javax.persistence.Column; 
import javax.persistence.Entity; 
import javax.persistence.FetchType; 
import javax.persistence.GeneratedValue; 
import javax.persistence.GenerationType; 
import javax.persistence.Id; 
import javax.persistence.JoinColumn; 
import javax.persistence.JoinTable; 
import javax.persistence.ManyToMany; 
import javax.persistence.OneToOne; 
import javax.persistence.Table; 

@Entity 
@Table(name = "CART") 
public class Cart { 

    @Id 
    @Column(name = "ID") 
    @GeneratedValue(strategy = GenerationType.AUTO) 
    private Long id; 

    @OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL) 
    @JoinColumn(name = "USER_ID") 
    private User user; 

    @ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY) 
    @JoinTable(name = "CART_PRODUCT", joinColumns = @JoinColumn(name = "CART_ID") , inverseJoinColumns = @JoinColumn(name = "PRODUCT_ID")) 
    private Set<Product> products; 

    public Long getId() { 
     return id; 
    } 

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

    public User getUser() { 
     return user; 
    } 

    public void setUser(User user) { 
     this.user = user; 
    } 

    public Set<Product> getProducts() { 
     return products; 
    } 

    public void setProducts(Set<Product> products) { 
     this.products = products; 
    } 

} 

產品實體

import java.util.Set; 

import javax.persistence.CascadeType; 
import javax.persistence.Column; 
import javax.persistence.Entity; 
import javax.persistence.GeneratedValue; 
import javax.persistence.GenerationType; 
import javax.persistence.Id; 
import javax.persistence.ManyToMany; 
import javax.persistence.Table; 

@Entity 
@Table(name = "PRODUCT") 
public class Product { 

    @Id 
    @Column(name = "ID") 
    @GeneratedValue(strategy = GenerationType.AUTO) 
    private Long id; 

    @Column(name = "name") 
    private String productName; 

    @ManyToMany(cascade = CascadeType.ALL, mappedBy = "products") 
    private Set<Cart> carts; 

    public Long getId() { 
     return id; 
    } 

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

    public String getProductName() { 
     return productName; 
    } 

    public void setProductName(String productName) { 
     this.productName = productName; 
    } 

    public Set<Cart> getCarts() { 
     return carts; 
    } 

    public void setCarts(Set<Cart> carts) { 
     this.carts = carts; 
    } 

} 
+0

Tq的爲考慮我的QS ......得到了同樣的想法 – Mohanraj

+0

http://stackoverflow.com/questions/43217992 /如何對retrive-登錄的用戶數據合彈簧-MVC和 - 冬眠 – Mohanraj

+0

http://stackoverflow.com/questions/43217992/how-to-retrive-logged-in-user-data -in-彈簧-MVC和 - 休眠 – Mohanraj