java List里面存储了两个对象,要如何把它读取出来
packageBBS.BaseDao.Closs;importjava.sql.ResultSet;importjava.sql.SQLException;importj...
package BBS.BaseDao.Closs;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import BBS.BaseDao.SQL.BaseDao_BaseDao;
import BBS.BaseDao.SQL.BaseDao_Select_Add;
import BBS.BaseDao.TBL.BaseDao_BOARD;
import BBS.BaseDao.TBL.BaseDao_TOPLC;
import BBS.BaseDao.TBL.BaseDao_USER;
public class BaseDao_Means {
/**
* 查询最后发帖
*/
public List<Object> ToplcUser(int boardid){
String sql="select top 1 t.title,t.contents,t.modifyTime,t.uid,t.boardid,b.uName from tbl_topic t,tbl_user b where t.uid = b.uid and t.boardid = ? order by modifyTime desc";
BaseDao_TOPLC toplc = null;
BaseDao_USER user = null;
List<Object> list = new ArrayList<Object>();
BaseDao_Select_Add select = new BaseDao_Select_Add();
try {
ResultSet rs =select.AddTopic(sql,new Object[]{""+boardid});
while (rs.next()) {
toplc= new BaseDao_TOPLC();
user = new BaseDao_USER();
toplc.setTitle(rs.getString("title"));
toplc.setContent(rs.getString("contents"));
toplc.setModifyTime(rs.getString("modifyTime"));
toplc.setUid(rs.getInt("uid"));
toplc.setBoardid(rs.getInt("boardid"));
user.setUName(rs.getString("uName"));
list.add(toplc);
list.add(user);
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return list;
}
List里面存储了两个对象,setUname是用户名、
public class BaseDao_TOPLC {
private String title;
private String content;
private String publishTime;
private String modifyTime;
private BaseDao_USER user;//用户对象
private int uid;
private int boardid;
这个是实体类,存储的是个对象,这要怎么读取呢》? 展开
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import BBS.BaseDao.SQL.BaseDao_BaseDao;
import BBS.BaseDao.SQL.BaseDao_Select_Add;
import BBS.BaseDao.TBL.BaseDao_BOARD;
import BBS.BaseDao.TBL.BaseDao_TOPLC;
import BBS.BaseDao.TBL.BaseDao_USER;
public class BaseDao_Means {
/**
* 查询最后发帖
*/
public List<Object> ToplcUser(int boardid){
String sql="select top 1 t.title,t.contents,t.modifyTime,t.uid,t.boardid,b.uName from tbl_topic t,tbl_user b where t.uid = b.uid and t.boardid = ? order by modifyTime desc";
BaseDao_TOPLC toplc = null;
BaseDao_USER user = null;
List<Object> list = new ArrayList<Object>();
BaseDao_Select_Add select = new BaseDao_Select_Add();
try {
ResultSet rs =select.AddTopic(sql,new Object[]{""+boardid});
while (rs.next()) {
toplc= new BaseDao_TOPLC();
user = new BaseDao_USER();
toplc.setTitle(rs.getString("title"));
toplc.setContent(rs.getString("contents"));
toplc.setModifyTime(rs.getString("modifyTime"));
toplc.setUid(rs.getInt("uid"));
toplc.setBoardid(rs.getInt("boardid"));
user.setUName(rs.getString("uName"));
list.add(toplc);
list.add(user);
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return list;
}
List里面存储了两个对象,setUname是用户名、
public class BaseDao_TOPLC {
private String title;
private String content;
private String publishTime;
private String modifyTime;
private BaseDao_USER user;//用户对象
private int uid;
private int boardid;
这个是实体类,存储的是个对象,这要怎么读取呢》? 展开
3个回答
展开全部
list.add(toplc);
list.add(user);
首先你这一步就储存了2个对象
假设你这一步就循环了1次while (rs.next())
那么你list对象里面就储存了2次 一个是new BaseDao_TOPLC();另一个是 new BaseDao_USER();
当你想取出对象BaseDao_TOPLC这个实体
就是你那个list对象里面的第0个 代码就list.get(0) 返回的事OBJECT
在强转为你储存的类BaseDao_TOPLC 代码BaseDao_TOPLC as=(BaseDao_TOPLC)list.get(0);
但是如果你这一步不只循环了1次while (rs.next())
那么你LIST里面的数据就有2个类 不好处理 但也是可以搞定的
这里就不多说了 因为这样写代码是不好的习惯
建议你在集合里放实体类只有1个!!!
希望对你有帮助
list.add(user);
首先你这一步就储存了2个对象
假设你这一步就循环了1次while (rs.next())
那么你list对象里面就储存了2次 一个是new BaseDao_TOPLC();另一个是 new BaseDao_USER();
当你想取出对象BaseDao_TOPLC这个实体
就是你那个list对象里面的第0个 代码就list.get(0) 返回的事OBJECT
在强转为你储存的类BaseDao_TOPLC 代码BaseDao_TOPLC as=(BaseDao_TOPLC)list.get(0);
但是如果你这一步不只循环了1次while (rs.next())
那么你LIST里面的数据就有2个类 不好处理 但也是可以搞定的
这里就不多说了 因为这样写代码是不好的习惯
建议你在集合里放实体类只有1个!!!
希望对你有帮助
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
BaseDao_TOPLC topic = (BaseDao_TOPLC)list[0];
BaseDao_USER user = (BaseDao_USER )list[1];
BaseDao_USER user = (BaseDao_USER )list[1];
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询