首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

struts2 页面action 传参加使用

2012-11-06 
struts2 页面action 传参与使用package entitypublic class Book implements java.io.Serializable {priv

struts2 页面action 传参与使用
package entity;public class Book implements java.io.Serializable {private Integer bookId;private String bookName;private String bookAuthor;public Integer getBookId() { return this.bookId;}public void setBookId(Integer bookId) { this.bookId = bookId;}public String getBookName() { return this.bookName;}public void setBookName(String bookName) { this.bookName = bookName;}public String getBookAuthor() { return this.bookAuthor;}public void setBookAuthor(String bookAuthor) { this.bookAuthor = bookAuthor;}}(2)查询所有书本的方法,该方法所在的类为BookManage.java,其示例内容如下:package dao;import org.springframework.orm.hibernate3.support.HibernateDaoSupport;import java.util.*;import entity.*;public class BookManage extends HibernateDaoSupport {@SuppressWarnings("unchecked")public List<Book> allBook(){ String hql = "from Book as book "; try{ List<Book> allBook = this.getHibernateTemplate().find(hql); return allBook; }catch (RuntimeException re) { throw re; }} }(3)创建一个action用来获取所有书本信息,action为AllBookAction.java,其示例内容如下:package com.xiaoqi.action;import javax.servlet.http.HttpServletRequest;import org.apache.struts2.ServletActionContext;import com.opensymphony.xwork2.ActionSupport;import java.util.*;import dao.BookManage;import entity.Book;@SuppressWarnings("serial")public class LeftAction extends ActionSupport{private BookManage bookManage;public void setBookManage(BookManage bookManage) { this.bookManage = bookManage;}public String execute(){ List<Book> allBook = bookManage.allBook(); HttpServletRequest request = ServletActionContext.getRequest(); request.setAttribute("allBook", allBook); return null;}}在上述代码中,将获取的所有书本信息保存到了名为"allBook"的request对象中,并返回null,因为返回值在现在这种情况下没有用。(4)在struts.xml中,配置该action,内容如下:<action name="allBookAction" abstract="false" lazy-init="default" autowire="default" dependency-check="default"> <property name="sessionFactory" > <ref local="sessionFactory"/> </property></bean><bean id="AllBookAction" > <property name="bookManage"> <ref bean="bookManage" /> </property> </bean>(6)最后看下显示页面book.jsp,其内容如下:<%@ page language="java" pageEncoding="gb2312"%><%@taglib uri="/struts-tags" prefix="s"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><head> ......</head><body><center> <s:action name="allBookAction" executeResult="false"></s:action> <div> <ul> <li>所有书本</li> <s:iterator value="#request.allBook"> <li> 书ID:<s:property value="bookId" /> </li> <li> 书名:<s:property value="bookName"/> </li> <li> 作者:<s:property value="bookAuthor"/> </li> </s:iterator> </ul> </div></center></body>

?上述代码中,先用<s:action name="allBookAction" executeResult="false"></s:action>访问AllBookAction,记得executeResult值为false。然后在<s:iterator value="#request.allBook">中指明要循环哪个request对象所保存的List,这里要循环名为allBook的request对象所保存的List。通过<s:property value="bookName"/>直接输出该request对象中所保存的List中的书本对象Book的bookName属性值。

热点排行