当前位置: 代码迷 >> Java Web开发 >> 请问遍历数据库的数据有关问题
  详细解决方案

请问遍历数据库的数据有关问题

热度:73   发布时间:2016-04-16 21:27:36.0
请教遍历数据库的数据问题
本帖最后由 abcxiaoye 于 2015-01-17 07:15:00 编辑
CategoryDao类
public Category loadCategoryAndDirectory(int id) {
Category category = null;
try {
session = HibernateFilter.getSession(); // 获取Session对象
session.beginTransaction(); // 开启事物
// HQL查询语句
String hql = "select a from Category a join fetch a.Directory b where a.id = "
+ id;
category = (Category) session.createQuery(hql) // 创建Query对象
.uniqueResult(); // 单值检索
session.getTransaction().commit(); // 提交事物
} catch (Exception e) {
e.printStackTrace(); // 打印异常信息
session.getTransaction().rollback(); // 回滚事物
}
return category;
}

在Action类中调用.loadCategoryAndDirectory方法
public ActionForward findInfoClass(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
CategoryForm cf = (CategoryForm)form;
if (cf.getId() > 0) {
CategoryDao dao = new CategoryDao();
Category  list= dao.loadCategoryAndDirectory(cf.getId());
                  request.setAttribute("cs", list);
取出数据库的数据后,接下来不知怎么遍历取值了。代码如下:
                   response.setContentType("text/xml; charset=utf-8");
StringBuffer responseXML = new StringBuffer("<mores>");
if cs != null && cs.size() > 0) {
responseXML.append("<moreinfo>");
responseXML.append("<moreid>0</moreid>");
responseXML.append("<morename>请选择小类</morename>");
responseXML.append("</moreinfo>");
                          while (it.hasNext()) {
responseXML.append("<moreinfo>");
responseXML.append("<moreid>" + cs.getClassid() + "</moreid>");
responseXML.append("<morename>" + cs.getClassname()
+ "</morename>");
responseXML.append("</moreinfo>");
}
}
responseXML.append("</mores>");
上面的代码肯定有问题,请教高手指教怎么修改?谢谢!!
------解决思路----------------------
     response.setContentType("text/xml; charset=utf-8");
StringBuffer responseXML = new StringBuffer("<mores>");
if cs != null && cs.size() > 0) {
responseXML.append("<moreinfo>");
responseXML.append("<moreid>0</moreid>");
responseXML.append("<morename>请选择小类</morename>");
responseXML.append("</moreinfo>");
                          while (it.hasNext()) {
responseXML.append("<moreinfo>");
responseXML.append("<moreid>" + cs.getClassid() + "</moreid>");
responseXML.append("<morename>" + cs.getClassname()
+ "</morename>");
responseXML.append("</moreinfo>");
}
}
responseXML.append("</mores>");

把它移到jsp页面来
  相关解决方案