hibernate是一个伟大的工具,嗯。真是用到上瘾
数据库和类的关联设计和命名规范
常见命名:
id   物理索引,无任何逻辑意义,所有关联全部通过id
name  名称
desc  描述
cust  客户
user  用户
acct  帐户
addr  地址
posi  位置
code  编码 
tele  电话
type  类型
chname 中文名称  这里并非唯一标识,需要的时候使用(name和desc不能满足的时候)
remark 备注
我们看到,实体类的设计中,我们牵涉如下类型的field:
1. id
2. 简单field ,本表就记录完整的资料
3. 对象   manytoone关联,典型的就是类型关联。
4. 对象   compement,应该抽象出类,但并非manytoone,典型的如地址(路,街,号)
5. 集合对象 manytomany,典型的如学生和老师的关系。
特别的我们看到type类型的设计,这是典型的多对一
所以在设计应该如下:
class Customer{
        CustType type
        ...
}
CustType extends Type{
        ...
}
class Type{
        String code;
        String name;
        String desc;
}
在hibernate的hbm中,我们使用manytoone。
而在整体设计中可以考虑把所有的Type做成继承结构,而用一张表来存放所有的type
例:
 code/name/desc/type
 101 ,new,新装,CustType
 102,del,拆 ,CustType
 101,new,新装 ,UserType
相对的,如果并非典型的manytoone,如地址
可以使用compement的设计
另外我们可以作一个类似数据字典的类字典设计,使用一个持久类来存放。
作用是1.待查,2.可以用于界面
class ClassDict
field      /name     /desc
Cust.Type,客户类型,表示客户的类型(如大客户,代理商等)