浅谈HibernateOrderItem

Hibernate OrderItem还是比较常用的,于是我研究了一下Hibernate OrderItem,在这里拿出来和大家分享一下,希望对大家有用。

成都创新互联主营郯城网站建设的网络公司,主营网站建设方案,重庆APP开发,郯城h5微信小程序开发搭建,郯城网站营销推广欢迎郯城等地区企业咨询

Hibernate OrderItem

Hibernate OrderItem这个类稍微复杂一些,但仍然很易懂。我们的业务需求决定我们需要一定量的产品,我们将会把它们放到一个订单中。那些产品将自动变成订单项。这时就需要自定义构造函数了。

 
 
 
  1. package test.hibernate;
  2. public class OrderItem {
  3. /**
  4. * 创建有效的订单项。自动设置订单项的价格,并更正产品的库存可用量
  5. *
  6. * @param order 该订单项属于的订单
  7. * @param product 该订单项为哪种产品而创建
  8. * @param amount
  9. */
  10. public OrderItem(Order order,
  11.  Product product,
  12.  int amount) {
  13. this.order = order;
  14. this.product = product;
  15. this.amount = amount;
  16. product.setAmount(product.getAmount() - amount);
  17. this.price = product.getPrice() * amount; 
  18. }
  19. // 还需要默认的构造函数来保证Hibernate工作
  20. /**
  21. * 空构造函数遵循JavaBeans约定
  22. *
  23. */
  24. public OrderItem() {
  25. // 空的默认构造函数
  26. }
  27. // 字段
  28. private String id;
  29. private Product product;
  30. private Order order;
  31. private String productId;
  32. private String orderId;
  33. private double price;
  34. private int amount;
  35.  
  36. public String getId() {
  37. return id;
  38. }
  39. public String getProductId() {
  40. return product.getId();
  41. }
  42. public String getOrderId() {
  43. return order.getId();
  44. }
  45. // 其他getter/setter方法没有显示
  46. // ...
  47. //显示该订单项的方便方式
  48. public String toString() {
  49. return
  50. "[OrderItem] id=" + id + " amount=" +
  51. amount + " price=" + price + "(" +
  52. product + ")";
  53. }
  54. }

如何把Hibernate OrderItem产品放到一个订单中。

 
 
 
  1. /**
  2. * 添加一项产品到订单中。产品自动成为一个订单项。
  3. * priceTotal被自动更新。
  4. *
  5. * @param p 添加到该订单的产品
  6. * @param amount 添加的产品量
  7. */
  8. public void addProduct(Product p,int amount) {
  9. OrderItem orderItem = new OrderItem(this,p, amount);
  10. thisthis.priceTotal = this.priceTotal+ p.getPrice() * amount;
  11. this.orderItems.add(orderItem);
  12. }

文章题目:浅谈HibernateOrderItem
分享网址:http://www.shufengxianlan.com/qtweb/news9/27359.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联