我建立一个表查询成功后,后台会显示这个信息,而我插入成功后我我去查询时候却显示这个,没有使用到查询语句,显示页面什么都没显示出来。
而我用dos命令下却可以显示出来,这是为什么呢?提交页面信息
public String deletePerson() throws Exception
{
Person person =new Person();
person.setUsername(username);
person.setPassword(password);
person.setAge(age);

java.sql.Date registerDate =new java.sql.Date(new java.util.Date().getTime());
person.setRegisterDate(registerDate);

PersonService personService =new PersonServiceImpl();
personService.savePerson(person);

List<Person> list= personService.listAllPersons();
HttpServletRequest request =ServletActionContext.getRequest();
request.setAttribute("list", list);
return SUCCESS;
}
然后在jsp页面中使用迭代器输入来。

解决方案 »

  1.   


    AAAA.jsp
    <s:iterator value="#request.list" id="person">
    <tr>
    <td>
    <s:a href="getSinglePerson.action?id=%{#person.id}"><s:property value="username"/></s:a>
    </td>
    <td>
    <s:property value="password"/>
    </td>
    <td>
    <s:property value="age" />
    </td>
    <td>
    <s:property value="registerDate"/>
    </td>
    <td>
    <s:a href="updatePerson.action?id%{#person.id}">update</s:a>
    </td>
    <td>
    <s:a href="deletePerson.action?di%{#person.id}" onclick=""> delete</s:a>
    </td>
    </tr>
    </s:iterator>
    =====================================
    BBBB.java public List<Person> listAllPersons()
    {
    Session session =HibernateUtil.openSession();
    Transaction tx=session.beginTransaction();

    List<Person> list=null;
    try
    {

    Query query=session.createQuery("from Person ");
    list =(List<Person>)query.list();

    tx.commit();
    }
    catch(Exception ex)
    {
    if(tx!=null)
    {
    tx.rollback();
    }
    }
    finally
    {
     HibernateUtil.close(session);
    }

    return list;
    }
    =====================================================
    Action
    public String deletePerson() throws Exception
    {
    Person person =new Person();
    person.setUsername(username);
    person.setPassword(password);
    person.setAge(age);

    java.sql.Date registerDate =new java.sql.Date(new java.util.Date().getTime());
    person.setRegisterDate(registerDate);

    PersonService personService =new PersonServiceImpl();
    personService.savePerson(person);

    List<Person> list= personService.listAllPersons();
    HttpServletRequest request =ServletActionContext.getRequest();
    request.setAttribute("list", list);
    return SUCCESS;
    }
      

  2.   

    在这个方法listAllPersons开头处下断点,一步步跟踪,看执行完query.list后,List<Person> list里是什么
      

  3.   

    List<Person> list= personService.listAllPersons();
    断点进去~~看下 这里LIST是否有数据~~
    如果这里有~~请检查 返回SUCCESS跳转页面的时候是否被重定向了
      

  4.   

    <s:iterator value="#request.list" id="person">   你这里把id改成var试试呢 ? 我感觉可能这里不对 你试试吧  我也说不准 
      

  5.   

    List<Person> list= personService.listAllPersons();你在这里打印下list的大小,看里面有内容吗?如有没内容,说明你的查询有问题;如果有内容,在页面不显示,就是你的页面展示有问题。
      

  6.   

    Debug下后台,看看Save和queryList两个方法的执行情况,若都有值且无异常,那就是前台的问题了。
    <s:iterator value="#request.list" var="person">
    <s:property value="#person.password"/>(以这种形式来取值,使用的是OGNL表达式)
      

  7.   

    页面上用request.getAttribute("list")取list看看大小,
    要是有值,说明你用的标签有问题