// 分类与子分类-数据表与简单Java类(一对多映射)
package com.demo;
//分类
class Iitem {
private long iid ;
private String title ;
private Subitem subitem [] ;
public Subitem[] getSubitem() {
return subitem;
}
public void setSubitem(Subitem[] subitem) {
this.subitem = subitem;
}
public long getIid() {
return iid;
}
public void setIid(long iid) {
this.iid = iid;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public Iitem(long iid, String title) {
this.iid = iid;
this.title = title;
}
public String getInfo() {
return "【分类信息】iid = " + this.iid + ",title = " + this.title;
}
}
// 子分类
class Subitem {
private long sid ;
private String title ;
// 关联字段
private Iitem item ;
public Iitem getItem() {
return item;
}
public void setItem(Iitem item) {
this.item = item;
}
public long getSid() {
return sid;
}
public void setSid(long sid) {
this.sid = sid;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public Subitem(long sid,String title) {
this.sid = sid ;
this.title = title ;
}
public String getInfo() {
return "【子分类信息】iid = " + this.sid + ",title = " + this.title;
}
}
public class Item {
public static void main(String[] args) {
// 根据结构设置对象数据
Iitem item = new Iitem(1L,"图书");
Subitem subitem [] = new Subitem [] {
new Subitem(10L,"图书1"),
new Subitem(11L,"图书2")
} ;
item.setSubitem(subitem); //一个分类下有多个子分类
for(int x = 0 ; x < subitem.length ; x ++) {
subitem[x].setItem(item);
}
//根据要求获取数
System.out.println(item.getInfo());
for(int x = 0 ; x < subitem.length ; x ++) {
System.out.println("\t|-" + item.getSubitem()[x].getInfo());
}
}
}