日期:2014-05-17  浏览次数:20701 次

两表主外键查询,如何在JSP页面调用方法?
各位大侠,小弟现在遇到了个问题,在JSP页面通过ID获取另外一个表的值,这是小弟写的方法:
public int getUser(UserInfo userInfo,UserGroupInfo userGroupInfo){
int result=0;
String sql="select UserGroupInfo.groupName,UserInfo.UGroupId from UserGroupInfo,UserInfo where UserGroupInfo.UGroupId=UserInfo.UGroupId";

UserInfo user=null;
UserGroupInfo group=null;

try {
con=DBConn.getCon();
ps=con.prepareStatement(sql);
rs=ps.executeQuery();
if(rs.next()){
user=new UserInfo();
group=new UserGroupInfo();
user.setUGroupId(rs.getInt("UGroupId"));
group.setUGroupId(rs.getInt("UGroupId"));
group.setGroupName(rs.getString("groupName"));
}

} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
DBConn.closeAll(con, ps, rs);
}
return result;
}
我想在显示页面:真实姓名:张三||所在用户组:1 就在数字1这个地方通过这个ID1获取到另外一个表的真实值,在JSP页面该怎样写获取的方法?
请各位大侠帮帮忙~~~
小弟的分值不够多,请各位包涵

------解决方案--------------------
就在数字1这个地方通过这个ID1获取到另外一个表的真实值,在JSP页面该怎样写获取的方法?
在jsp页面和servlet里写法一样的、我上面不是已经写了?
------解决方案--------------------
在jsp页面直接饮用这个对象,然后跟java中调用一样。
Java code
<%
  UserInfo userInfo = new UserInfo();
  UserGroupInfo userGroupInfo = new UserGroupInfo();
  UserDao userDao = new UserDao();
  int count = userDao.getUser(userInfo, userGroupInfo);
  //然后可以直接使用userInfo,userGroupInfo了。
%>

------解决方案--------------------
//假定你的两个类属性为下:
User(uid,uname,remark);
UserGroupInfo(ugid,ugname,remark,uid);
//通过uid获取UserGroupInfo信息
public UserGroupInfo getUserGroupInfo(User user,UserGroupInfo userGroupInfo){
String sql="select * from UserGroupInfo where UGroupId='"+UserInfo.UGroupId+"'";
UserGroupInfo group=null;
try {
con=DBConn.getCon();
ps=con.prepareStatement(sql);
rs=ps.executeQuery();
if(rs.next()){
user=new UserInfo();
group=new UserGroupInfo();
group.setUgid(rs.getInt("ugid"));
group.setGroupName(rs.getString("groupName"));
group.setRemark(rs.getString("remark"));
}

} catch (SQLException e) {
e.printStackTrace();
}finally{
DBConn.closeAll(con, ps, rs);
}
return group;
}
//以上方法是你的user信息在加载页面前已经获取