学习Spring有两周时间了 , 个人觉得服务端主要实现的是数据关系的维护和数据结构的制定 , 以及由业务需求产生的CRUD , 只要保证对前端提供的接口稳定高效响应 , 具体的前端实现完全不关心.
这个是接触后端的一个感受 , Spring boot使用了特定的方式来进行配置 ,大大简化了后端开发人员的开发工作量 ,比如JPA:用来操作实体对象,执行CRUD操作,框架在后台替我们完成所有的事情,开发者从繁琐的JDBC和SQL代码中解脱出来 ,此时数据之间的关系维护和数据结构的制定就显得尤为关键 , 下面记录数据表对应关系中的常见关系:一对多关系.
数据表关系
下面用实际场景简单理解数据表之间的关系
一对一:我有一个身份证号 ;
一对多:我有多张银行卡;
多对多:我是招行、交行、建行的客户,但是这些银行用户均过亿。
一对多双向关联
下面以订单order和订单项orderitem来展示
创建订单实体类,代码如下:
packagelearn.jpa.entity;importjava.util.HashSet;importjava.util.Set;importjavax.persistence.CascadeType;importjavax.persistence.Column;importjavax.persistence.Entity;importjavax.persistence.Id;importjavax.persistence.OneToMany;/*** 订单*/@Entity//定义类为实体类
public classOrder {privateString orderid;private float amount =0f;private Set item = new HashSet();
@Id//实体标识符,因为是字符串类型,所有不能用 @GeneratedValue,只能人为的赋值
@Column(length=20)publicString getOrderid() {returnorderid;
}public voidsetOrderid(String orderid) {this.orderid =orderid;
}
@Column(nullable= false)public floatgetAmount() {returnamount;
}public void setAmount(floatamount) {this.amount =amount;
}
@One