struts+hibernate ,request.list问题 新手

OoTomDogoO 2009-04-12 10:12:54

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<html>
<head>

<title>Insert title here</title>
</head>
<body>
<s:iterator value="#request.list" id="do">
<tr><td>标题</td><td>操作</td></tr>
<tr><td><a href="Updateaction.action?id=<s:property value="#do.bt" />"></a><s:property value="#do.bt" /></td><td><a href="Delaction.action?id=<s:property value="#do.id" />">删除</a></td><td><a href="Updateaction?id=<s:property value="#do.id" />">修改</a></td></tr>
</s:iterator>
</body>
</html>



package com.qy.action;

import java.util.List;

import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;

import com.opensymphony.xwork2.ActionSupport;
import com.qy.hir.HibernateSessionFactory;

public class TableList extends ActionSupport {

private String bt;
private List list;

public String getBt() {
return bt;
}
public void setBt(String bt) {
this.bt = bt;
}
public List getList() {
return list;
}
public void setList(List list) {
this.list = list;
}
public String execute() throws Exception {

Session session = HibernateSessionFactory.currentSession();
Transaction t = session.beginTransaction();
Query q = session.createQuery("from Fwu");
list = q.list();
t.commit();
System.out.println("-------------"+list);
return "SUCCESS";
}

}



<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>

<package name="com.qy.action" extends="struts-default">

<action name="add" class="com.qy.action.add">
<result name="SUCCESS">/success.jsp</result>
</action>

<action name="do" class="com.qy.action.TableList">
<result name="SUCCESS">list.jsp</result>
</action>

</package>

</struts>


打开list.jsp时 网页空白 请高手赐教
...全文
74 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
yzwylp 2009-09-07
  • 打赏
  • 举报
回复
看得出来你真的是个新手,你居然把操作数据库的东西写在了action中,这样很不规范,查询数据库是不需要提交事务的, 在这里你的list页面肯定是空的,因为你在TableList这个类中并没有把list放在request或session中,所以就算你去到了list页面也没有可显示的东西
liu124983205 2009-09-07
  • 打赏
  • 举报
回复
同上 ,传值失败。。。期待解决办法
lin_0711 2009-09-07
  • 打赏
  • 举报
回复
1, 你用的是struts2 你action用的还是struts1的方法 execute 你的代码要改的真的不少 如果jsp不改 你action几乎就是要重新写. 这几句放到daoImpl里写 在action里调用就行了
dao:
public void update(String id){
Session session = HibernateSessionFactory.currentSession();
Transaction t = session.beginTransaction();
t.update(id);
t.commit();
session.close();

}

action代码:
public class TableList extends ActionSupport {
private daoImpl dao;
private 类名 id;

get,set方法

public String update(){
//处理异常
Map request=(Map)ActionContext.getContext().get("request");
try{
dao.update(id);
return succse;}
catch(exction e){
return error;
}
}
}
STRUTS2.XML
<struts>

<package name="com.qy.action" extends="struts-default">

<action name="Updateaction" class="com.qy.action.TableList" method="update">
<result name="SUCCESS">/success.jsp</result>
</action>
</package>

<s:iterator value="#request.list" id="do">
<tr><td>标题</td><td>操作</td></tr>
<tr><td>
<a href="Delaction.action?id=${do.id}>删除</a>
</td><td>
<a href="Updateaction.action?id=#{do.id}">修改</a>
</td></tr>
</s:iterator>


</struts>

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧