【发布时间】:2011-08-29 20:24:13
【问题描述】:
我有 Persons(id, name,..)、Division(id, name, parentId, level...) 和 PersonDivisoin (id, personId, divisionId...) 表。应用程序使用hibernate框架来映射关系与Person和Person Division之间的onetoone映射,Division和PersonDivision之间的onetomany映射..下面是Division表中的示例数据..
_ _ _ _ _ _ __ _ _ _ _ _ _ _
| id | name | parentId| level|
-----------------------------
1 XYZ dept
2 ZYW 1 team
而 PersonDivision 表是...
_ _ _ _ _ _ _ _ _ _ _ _ __ _ _
| id | personid | divisionId|
------------------------------
1 1 2
所以如果我有一个人对象,我无法在前端获取父部门名称的值..
Person 类看起来像这样..
class Person{
String name;
int id;
PersonDivision personDivision;
}
PersonDivision 类..
class PersonDivision
{
int id;
@OneToOne Person person;
@ManytoOne Division division;
}
在首页(jsp),如果必须访问一个人的团队,我可以做类似的事情,${person.personDivisoin.divsion.name}
但是我如何访问 Person 的“部门”?理想情况下,它应该从“Division”表中获取 parentid 并从中获取名称.. ${person.personDivisoin.divsion.parentId} 提供 Parent Division id 但我不确定如何使用 JSTL 检索其名称.. 最好我能想到的是,将所有部门的列表作为带有 id 和 name 的二维数组发送,然后在视图中,从 id 中检索 name..
我想知道是否有更好/更简单的方法来做到这一点..提前谢谢!
【问题讨论】: