2017-04-02 113 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