比如说一个人可以买多张车票
- public class Customer {
- private Integer customerId;
- private String customerName;
- private Integer customerTel;
- private List<Ticket> tickets;//使用一个List来表示车票
- public List<Ticket> getTickets() {
- return tickets;
- }
- public void setTickets(List<Ticket> tickets) {
- this.tickets = tickets;
- }
- public Integer getCustomerId() {
- return customerId;
- }
- public void setCustomerId(Integer customerId) {
- this.customerId = customerId;
- }
- public String getCustomerName() {
- return customerName;
- }
- public void setCustomerName(String customerName) {
- this.customerName = customerName;
- }
- public Integer getCustomerTel() {
- return customerTel;
- }
- public void setCustomerTel(Integer customerTel) {
- this.customerTel = customerTel;
- }
- @Override
- public String toString() {
- return "Customer [customerId=" + customerId + ", customerName="
- + customerName + ", customerTel=" + customerTel+"]";
- }
- 而我们的车票 一般只能对应一个人
-
- public class Ticket {
- private Integer ticketId;
- private String ticketAddress;
- private Integer ticketPrice;
- private Integer ticketCId;
- private Customer customer;//使用一个customer来表示顾客
- public Customer getCustomer() {
- return customer;
- }
- public void setCustomer(Customer customer) {
- this.customer = customer;
- }
- public Integer getTicketId() {
- return ticketId;
- }
- public void setTicketId(Integer ticketId) {
- this.ticketId = ticketId;
- }
- public String getTicketAddress() {
- return ticketAddress;
- }
- public void setTicketAddress(String ticketAddress) {
- this.ticketAddress = ticketAddress;
- }
- public Integer getTicketPrice() {
- return ticketPrice;
- }
- public void setTicketPrice(Integer ticketPrice) {
- this.ticketPrice = ticketPrice;
- }
- public Integer getTicketCId() {
- return ticketCId;
- }
- public void setTicketCId(Integer ticketCId) {
- this.ticketCId = ticketCId;
- }
- @Override
- public String toString() {
- return "Ticket [ticketId=" + ticketId + ", ticketAddress="
- + ticketAddress + ", ticketPrice=" + ticketPrice
- + ", ticketCId=" + ticketCId + "]";
- }
- }
-
3、定义sql映射文件
(1)首先是一对多关联:
MyBatis中使用collection标签来解决一对多的关联查询,collection标签可用的属性如下:
- property:指的是集合属性的值
- ofType:指的是集合中元素的类型
- column:所对应的外键字段名称
- select:使用另一个查询封装的结果
(2)接着是一对一关联:MyBatis中使用association标签来解决一对一的关联查询,association标签可用的属性如下:
- property:对象属性的名称
- javaType:对象属性的类型
- column:所对应的外键字段名称
- select:使用另一个查询封装的结果
-
-