public class SimpleBean{ PRotected int id; protected String name; public int getId(){ return id; } public void setId(int id){ this.id=id; } public String getName(){ return name; } public void setName(String name){ this,name=name; } } 我们完全可以这样进行name映射:
public class Class1{ public Class2 class2; public Class2 getclass2()… public void setClass2(Class2 class2)… } public class Class2{ public Class1 class1; public Class1 getClass1()... ... } 这种关系很显然是双向的,可以从class1中得到class2,反过来,也可以从class2中得到class1,那么体现到数据表中呢?首先可以肯定class1àtable1,class2àtable2;很显然,table1和table2都要互相增加多一列来保存对方的key。
这些简单的关系在数据库表的关联中得到了很好的支持,但是稍微复杂一点的呢?
诸如以下一个类:
public class S { ArrayList datas; Public List getDatas().. Public void setDatas(List datas).. …. } 这里假如简单用上面所分析的propertyname-àColumnName显然不可以,这种集合作为bean属性我们该怎么在数据表中得到很好体现呢?假如这些集合只是简单的String 集合,它在数据库表里面是怎么表述的呢?假如这些集合是保存某些类实例的,似乎可以转换为数据库表的一对多的关系?
public class BookStore{ Set books; Public Set getBoos().. Public void setBooks(Set boos)… Public void addBook(Book book)… public class Book{ public BookStore bookStore; public Parent getBookStore().. .. } 在业务逻辑中,我们会这样写代码: