Hibernate两表查询

[color=olive][size=large]一.两个表:
person
1 id
2 name(人名)
3 roomid

room
1 roomid
2 room(房间号)

说明:一个room有多个person,通过roomid取出name和room封装到list

二.两个类:
person类

private int id;
private String name;
private int roomid;

public Person()
{

}

public Person(int id,String name,int roomid)
{
this.id=id;
this.name=name;
this.roomid=roomid;
}

public int getId()
{
return this.id;
}

public void setId(int id)
{
this.id = id;
}

public String getName()
{
return this.name;
}

public void setName(String name)
{
this.name = name;
}

public int getRoomid()
{
return roomid;
}

public void setRoomid(int roomid)
{
this.roomid = roomid;
}


room类

private int roomid;
private String room;

public Room()
{

}

public Room(int roomid,String room)
{
this.roomid=roomid;
this.room = room;
}

public String getRoom()
{
return this.room;
}

public void setRoom(String room)
{
this.room = room;
}

public int getRoomid()
{
return roomid;
}

public void setRoomid(int roomid)
{
this.roomid = roomid;
}


三.Person.hbm.xml和Room.hbm.xml正常配置,此处就不写了.


四.Hibernate语句

String queryString="select p.name , r.room from Person p , Room r
where p.roomId = r.roomId";

return getHibernateTemplate().find(queryString);

此处返回一个list

五.获取list的值

设返回值是list
写一个JavaBean:
NrUtil
private String name;
private String room;

List<NrUtil> nrUtilList;

取list中的数据放入JavaBean中

Iterator it=list.iterator();
while(it.hasNext())
{
Object[] ob=(Object[])it.next();
String name=(String)ob[0];
String room=(String)ob[1];
NrUtil nr=new NrUtil(name,room);
nrUtilList.add(nr);
}

六.在JSP页面显示
利用<s:iterator>显示


本人为JavaWeb初学者,有不对的地方请大家批评,指出,我会听取大家的意见,不断完善,谢谢![/size][/color]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值