﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-渔人码头-文章分类-Struts</title><link>http://www.blogjava.net/fisher/category/19002.html</link><description>天行健，君子以自强不息。地势坤，君子以厚德载物。</description><language>zh-cn</language><lastBuildDate>Wed, 28 Feb 2007 03:43:56 GMT</lastBuildDate><pubDate>Wed, 28 Feb 2007 03:43:56 GMT</pubDate><ttl>60</ttl><item><title>Struts实时生成Excel文件下载 </title><link>http://www.blogjava.net/fisher/articles/94262.html</link><dc:creator>Fisher</dc:creator><author>Fisher</author><pubDate>Tue, 16 Jan 2007 09:51:00 GMT</pubDate><guid>http://www.blogjava.net/fisher/articles/94262.html</guid><wfw:comment>http://www.blogjava.net/fisher/comments/94262.html</wfw:comment><comments>http://www.blogjava.net/fisher/articles/94262.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/fisher/comments/commentRss/94262.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/fisher/services/trackbacks/94262.html</trackback:ping><description><![CDATA[
		<p>我做的项目原来是先在服务器上生成一个excel文件，然后用jspsmartupload下载的，可是由于用jspsmartupload下载的excel文件由于编码问题会有损坏，而且服务器的压力也太大，所以改为在Action中生成excel文件，然后下载，方便多了。由于项目的原因，excel文件是实时生成的，对于jxl的使用，大家可以参考jxl相关的文章。<br />有什么问题可以和我联系。<br />MSN:whw_dream(AT)hotmail.com<br />代码如下：<br />test.jsp<br /></p>
		<p>
		</p>
		<hr id="null" />
		<p>
		</p>
		<p>
				<br />&lt;%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %&gt;<br />&lt;html:html&gt;<br />&lt;html:button property="button" onclick="printAll()"&gt;<br />DownLoad <br />&lt;/html:button&gt;<br />&lt;/html:html&gt;<br />&lt;script language='javascript'&gt;<br />function printAll(){ location.href="&lt;%=request.getContextPath()%&gt;&lt;%=request.getContextPath()%&gt;/download.do"; }<br />&lt;/script&gt;<br /></p>
		<p>
		</p>
		<hr id="null" />
		<p>
		</p>
		<p>DownloadAction.java<br /></p>
		<p>
		</p>
		<hr id="null" />
		<p>
		</p>
		<p>import org.apache.struts.action.*;<br />import javax.servlet.http.*;<br />import java.io.OutputStream;<br />import test.whw.upload.ExcelBean;<br />/**<br /> * &lt;p&gt;Title:DownloadAction &lt;/p&gt;<br /> * &lt;p&gt;Description: QRRSMMS &lt;/p&gt;<br /> * &lt;p&gt;Copyright: Copyright (c) 2004 jiahansoft&lt;/p&gt;<br /> * &lt;p&gt;Company: jiahansoft&lt;/p&gt;<br /> * @author wanghw<br /> * @version 1.0<br /> */</p>
		<p>public class DownloadAction extends Action {<br />  public ActionForward execute(ActionMapping mapping,<br />                               ActionForm form,<br />                               HttpServletRequest request,<br />                               HttpServletResponse response)<br />      throws Exception {<br />    try{<br />      String fname = "test";//Excel文件名<br />      OutputStream os = response.getOutputStream();//取得输出流<br />      response.reset();//清空输出流<br />      response.setHeader("Content-disposition", "attachment; filename=" + fname + ".xls");//设定输出文件头<br />      response.setContentType("application/msexcel");//定义输出类型<br />      ExcelBean eb = new ExcelBean();<br />      eb.expordExcel(os);//调用生成excel文件bean<br />    }catch(Exception e){<br />      System.out.println(e);<br />    }</p>
		<p>    return mapping.findForward("display");<br />  }<br />}<br /></p>
		<hr id="null" />
		<p>
		</p>
		<p>ExcelBean.java<br /></p>
		<p>
		</p>
		<hr id="null" />
		<p>
		</p>
		<p>package test.whw.upload;<br />import java.io.*;<br />import jxl.*;<br />import jxl.write.*;<br />import jxl.format.*;<br />import java.util.*;<br />import java.awt.Color;</p>
		<p>public class ExcelBean {<br />  public ExcelBean(){}<br />  public String expordExcel(OutputStream os)throws Exception{<br />    jxl.write.WritableWorkbook wbook = Workbook.createWorkbook(os); //建立excel文件<br />    String tmptitle = "测试文件"; //标题<br />    jxl.write.WritableSheet wsheet = wbook.createSheet("第一页", 0); //sheet名称<br />    //设置excel标题<br />    jxl.write.WritableFont wfont = new jxl.write.WritableFont(<br />        WritableFont.ARIAL, 16,<br />        WritableFont.BOLD, false, jxl.format.UnderlineStyle.NO_UNDERLINE,<br />        jxl.format.Colour.BLACK);<br />    jxl.write.WritableCellFormat wcfFC = new jxl.write.WritableCellFormat(<br />        wfont);<br />    jxl.write.Label wlabel1;<br />    wlabel1 = new jxl.write.Label(5, 0, tmptitle, wcfFC);<br />    wsheet.addCell(wlabel1);<br />    wfont = new jxl.write.WritableFont(<br />        WritableFont.ARIAL, 14,<br />        WritableFont.BOLD, false, jxl.format.UnderlineStyle.NO_UNDERLINE,<br />        jxl.format.Colour.BLACK);<br />    wcfFC = new jxl.write.WritableCellFormat(<br />        wfont);<br />    jxl.write.Label wlabel;<br />    wlabel = new jxl.write.Label(0, 0, "写入内容");<br />    wsheet.addCell(wlabel); //<br />    wbook.write(); //写入文件<br />    wbook.close();<br />    os.close();<br />    return "success";<br />  }<br />}<br /><br /></p>
		<hr id="null" />
		<br />struts-config.xml<br /><hr id="null" />
&lt;?xml version="1.0" encoding="UTF-8"?&gt;<br />&lt;!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "<a href="http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd</a>"&gt;<br />&lt;struts-config&gt;<br />  &lt;action-mappings&gt;<br />    &lt;action type="test.whw.upload.DownloadAction" path="/download"&gt;<br />      &lt;forward name="display" path="/display.jsp" /&gt;<br />    &lt;/action&gt;<br />  &lt;/action-mappings&gt;<br />&lt;/struts-config&gt;<br />&lt;!--display.jsp是成功的提示页面--&gt;<br /><hr id="null" /><br /><p></p><br /><br /><p id="TBPingURL">Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=181276</p><img src ="http://www.blogjava.net/fisher/aggbug/94262.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/fisher/" target="_blank">Fisher</a> 2007-01-16 17:51 <a href="http://www.blogjava.net/fisher/articles/94262.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Struts的文件上传 </title><link>http://www.blogjava.net/fisher/articles/94261.html</link><dc:creator>Fisher</dc:creator><author>Fisher</author><pubDate>Tue, 16 Jan 2007 09:50:00 GMT</pubDate><guid>http://www.blogjava.net/fisher/articles/94261.html</guid><wfw:comment>http://www.blogjava.net/fisher/comments/94261.html</wfw:comment><comments>http://www.blogjava.net/fisher/articles/94261.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/fisher/comments/commentRss/94261.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/fisher/services/trackbacks/94261.html</trackback:ping><description><![CDATA[
		<p>最近刚做完一个项目，用Struts1.1做的。从不懂，到熟练使用，都靠参考CSDN的一些文档。但是文章上讲的并不一定适合自己，所以我把我自己做的一些东西拿上来给大家看看，互相交流一下。如果您有跟好的方法，可以和我联系。<br />MSN:whw_dream (AT) hotmail.com<br /><br />Struts的文件上传<br />本文用的是Struts1.1的org.apache.struts.upload.FormFile类。很方便，不用自己写。也不用写一个jsp调用jspsmartupload就可以搞定。<br /><br />选择上传文件页面：selfile.jsp<br /></p>
		<hr id="null" />
&lt;%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%&gt;<br />&lt;html:html&gt;<br />&lt;html:form action="/uploadsAction.do" enctype="multipart/form-data"&gt;<br />&lt;html:file property="theFile"/&gt;<br />&lt;html:submit/&gt;<br />&lt;/html:form&gt;<br />&lt;/html:html&gt;<br /><hr id="null" />
UpLoadAction.java 
<hr id="null" />
import java.io.*;<br />import javax.servlet.http.*;<br />import org.apache.struts.action.*;<br />import org.apache.struts.upload.FormFile; 
<p></p><p>/**<br /> * &lt;p&gt;Title:UpLoadAction&lt;/p&gt;<br /> * &lt;p&gt;Description: QRRSMMS &lt;/p&gt;<br /> * &lt;p&gt;Copyright: Copyright (c) 2004 jiahansoft&lt;/p&gt;<br /> * &lt;p&gt;Company: jiahansoft&lt;/p&gt;<br /> * @author wanghw<br /> * @version 1.0<br /> */<br /><br />public class UpLoadAction extends Action {<br />  public ActionForward execute(ActionMapping mapping,<br />                               ActionForm form,<br />                               HttpServletRequest request,<br />                               HttpServletResponse response)<br />      throws Exception {<br />    if (form instanceof uploadsForm) {//如果form是uploadsForm<br />        String encoding = request.getCharacterEncoding();<br />        if ((encoding != null) &amp;&amp; (encoding.equalsIgnoreCase("utf-8")))<br />        {<br />            response.setContentType("text/html; charset=gb2312");//如果没有指定编码，编码格式为gb2312<br />        }<br />        UpLoadForm theForm = (UpLoadForm ) form;<br />        FormFile file = theForm.getTheFile();//取得上传的文件<br />        try {<br />          InputStream stream = file.getInputStream();//把文件读入<br />          String filePath = request.getRealPath("/");//取当前系统路径<br />          ByteArrayOutputStream baos = new ByteArrayOutputStream();<br />          OutputStream bos = new FileOutputStream(filePath + "/" +<br />                                                  file.getFileName());//建立一个上传文件的输出流<br />          //System.out.println(filePath+"/"+file.getFileName());<br />          int bytesRead = 0;<br />          byte[] buffer = new byte[8192];<br />          while ( (bytesRead = stream.read(buffer, 0, 8192)) != -1) {<br />            bos.write(buffer, 0, bytesRead);//将文件写入服务器<br />          }<br />          bos.close();<br />          stream.close();<br />        }catch(Exception e){<br />          System.err.print(e);<br />        }<br />        //request.setAttribute("dat",file.getFileName());<br />        return mapping.findForward("display");<br />    }<br />    return null;<br />  }<br />}<br /></p><hr id="null" /><br />UpLoadForm.java<br /><hr id="null" /><p></p><p>import javax.servlet.http.HttpServletRequest;<br />import org.apache.struts.action.*;<br />import org.apache.struts.upload.*;<br /><br />/**<br /> * &lt;p&gt;Title:UpLoadForm&lt;/p&gt;<br /> * &lt;p&gt;Description: QRRSMMS &lt;/p&gt;<br /> * &lt;p&gt;Copyright: Copyright (c) 2004 jiahansoft&lt;/p&gt;<br /> * &lt;p&gt;Company: jiahansoft&lt;/p&gt;<br /> * @author wanghw<br /> * @version 1.0<br /> */</p><p>public class UpLoadForm extends ActionForm {<br />  public static final String ERROR_PROPERTY_MAX_LENGTH_EXCEEDED = "org.apache.struts.webapp.upload.MaxLengthExceeded";<br />  protected FormFile theFile;<br />  public FormFile getTheFile() {<br />      return theFile;<br />  }<br />  public void setTheFile(FormFile theFile) {<br />      this.theFile = theFile;<br />  }<br />  public ActionErrors validate(ActionMapping mapping, HttpServletRequest request)<br />  {<br />      ActionErrors errors = null;<br />      //has the maximum length been exceeded?<br />      Boolean maxLengthExceeded = (Boolean)<br />              request.getAttribute(MultipartRequestHandler.ATTRIBUTE_MAX_LENGTH_EXCEEDED);<br />      if ((maxLengthExceeded != null) &amp;&amp; (maxLengthExceeded.booleanValue()))<br />      {<br />          errors = new ActionErrors();<br />          errors.add(ERROR_PROPERTY_MAX_LENGTH_EXCEEDED, new ActionError("maxLengthExceeded"));<br />      }<br />      return errors;</p><p>  }<br />}<br />//这是相对应的form，还有其他属性可以设置，具体可以参考struts的上传例子。<br /><br /></p><hr id="null" /><br />struts-config.xml<br /><hr id="null" /><br />&lt;?xml version="1.0" encoding="UTF-8"?&gt;<br />&lt;!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "<a href="http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd</a>"&gt;<br />&lt;struts-config&gt;<br />  &lt;form-beans&gt;<br />    &lt;form-bean name="uploadsForm" type="UpLoadForm" /&gt;<br />  &lt;/form-beans&gt;<br />  &lt;action-mappings&gt;<br />    &lt;action name="uploadsForm" type="UpLoadAction" path="/uploadsAction"&gt;<br />      &lt;forward name="display" path="/display.jsp" /&gt;<br />    &lt;/action&gt;<br />  &lt;/action-mappings&gt;<br />&lt;/struts-config&gt;<br />&lt;!--display.jsp就是随便写一个成功页--&gt; 
<p></p><br /><br /><p id="TBPingURL">Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=181207</p><img src ="http://www.blogjava.net/fisher/aggbug/94261.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/fisher/" target="_blank">Fisher</a> 2007-01-16 17:50 <a href="http://www.blogjava.net/fisher/articles/94261.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>struts标签html</title><link>http://www.blogjava.net/fisher/articles/92152.html</link><dc:creator>Fisher</dc:creator><author>Fisher</author><pubDate>Sat, 06 Jan 2007 01:55:00 GMT</pubDate><guid>http://www.blogjava.net/fisher/articles/92152.html</guid><wfw:comment>http://www.blogjava.net/fisher/comments/92152.html</wfw:comment><comments>http://www.blogjava.net/fisher/articles/92152.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/fisher/comments/commentRss/92152.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/fisher/services/trackbacks/92152.html</trackback:ping><description><![CDATA[
		<h4 class="TextColor1" id="subjcns!E1EAC04AC7089B5E!222" style="MARGIN-BOTTOM: 0px">struts标签html</h4>
		<div id="msgcns!E1EAC04AC7089B5E!222">
				<div>&lt;!--######################################################################--&gt;<br />&lt;!-- 不带参数的page连接方式 --&gt;<br />&lt;html:link [page="/XXX.do"|action="/XXX"]&gt;连接内容&lt;/html:link&gt;<br />&lt;!--带参数的一种连接方式--&gt;<br />&lt;html:link<br />  [page="/XXX.do?paramName1=value1&amp;amp;paramName2=value2"|<br />  page="/XXX?paramName1=value1&amp;amp;paramName2=value2"]&gt;<br />        连接内容<br />      &lt;/html:link&gt;<br />&lt;html:link [page="/XXX.do"|action="/XXX"]<br />           paramId="参数名"<br />           paramName="在page|request|response|session中存在的属性名"&gt;<br />        连接内容<br />      &lt;/html:link&gt;<br />&lt;!--带参数的一种连接方式--&gt;<br />&lt;html:link [page="/XXX.do"|action="/XXX"]<br />           paramId="参数名"<br />           paramName="配置文件中的BEAN的配置名称"<br />           paramProperty="配置对象中的成员变量"&gt;<br />        连接内容<br />      &lt;/html:link&gt;<br />&lt;html:link action="/XXX"<br />           name="在page|request|response|session中存在的属性名"&gt;<br />        连接内容<br />      &lt;/html:link&gt;<br />&lt;html:link href="完整的url路径"&gt;<br />        连接内容<br />      &lt;/html:link&gt;<br />&lt;html:link page="相对于当前操作路径的url"&gt;<br />        连接内容<br />      &lt;/html:link&gt;<br />&lt;html:link forward="struts配置文件中存在的&lt;global-forwards&gt;元素的子元素&lt;forwar&gt;的name值"&gt;<br />        连接内容<br />      &lt;/html:link&gt;<br />&lt;!--######################################################################--&gt;<br />&lt;html:img page="相对于当前操作路径的url" /&gt;<br />&lt;!--######################################################################--&gt;<br />&lt;html:img src="完整的uri路径"<br />  paramId="参数名"<br />  paramName="page|request|response|session中存在的属性名"/&gt;<br />&lt;!--######################################################################--&gt;<br />&lt;html:form<br />  action="xxx.do"<br />  focus="焦点"<br />  method="GET|POST|DELETE|PUT|HEAD|OPTIONS" &gt;<br />&lt;!--######################################################################--&gt;<br />  &lt;!-- 单行输入框 --&gt;<br />  &lt;html:text property="prptName"&gt;初始值&lt;/html:text&gt;<br />&lt;!--######################################################################--&gt;<br />  &lt;!-- 隐藏字段 --&gt;<br />  &lt;html:hidden property="prptName" /&gt;<br />&lt;!--######################################################################--&gt;<br />  &lt;!-- 密码输入框 --&gt;<br />  &lt;html: password property="prptName"&gt;&lt;/html: password&gt;<br />&lt;!--######################################################################--&gt;<br />  &lt;!-- 文件获取输入框 --&gt;<br />  &lt;html:file property="prptName"&gt;初始值&lt;/html:file&gt;<br />&lt;!--######################################################################--&gt;<br />  &lt;!-- 按钮 --&gt;<br />  &lt;html:button property="prptName"&gt;初始值&lt;/html:button&gt;<br />&lt;!--######################################################################--&gt;<br />  &lt;!-- 提交按钮 --&gt;<br />  &lt;html:submit property="prptName"&gt;初始值&lt;/html:submit&gt;<br />&lt;!--######################################################################--&gt;<br />  &lt;!-- 取消按钮 --&gt;<br />  &lt;html:cancel property="prptName"&gt;初始值&lt;/html:cancel&gt;<br />&lt;!--######################################################################--&gt;<br />  &lt;!-- 重置按钮 --&gt;<br />  &lt;html:reset property="prptName"&gt;初始值&lt;/html:reset&gt;<br />&lt;!--######################################################################--&gt;<br />  &lt;!-- 图片按钮 --&gt;<br />  &lt;html:image onclick="" src="url" &gt;初始值&lt;/html:image&gt;<br />&lt;!--######################################################################--&gt;<br />  &lt;!-- 复选框 --&gt;<br />  &lt;html:checkbox property="prptName"&gt;初始值&lt;/html:checkbox&gt;<br />&lt;!--######################################################################--&gt;<br />  &lt;!--多选框的表达方式一--&gt;<br />  &lt;html:multibox property="属性名" value="初始值"/&gt;<br />&lt;!--######################################################################--&gt;<br />  &lt;!--多选框的表达方式二--&gt;<br />  &lt;html:multibox property="属性名"&gt;初始值&lt;/html:multibox&gt;<br />&lt;!--######################################################################--&gt;<br />  &lt;!-- 选择列表 --&gt;<br />  &lt;html:select<br />    property="prptName"<br />    size="指定在网页上显示的可选的数目"<br />    multiple="true|false,此属性用于指定列表是否允许多选"&gt;<br />&lt;!--######################################################################--&gt;<br />    &lt;html:option<br />      value="绑定的属性名"<br />      bundle="系统文件中绑定的属性名"<br />      key="资源文件中绑定的属性" &gt;lable&lt;/html:option&gt;<br />&lt;!--######################################################################--&gt;<br />    &lt;html:options<br />      collection="Vector对象,此对象中放置org.apache.struts.util.LabelValueBean对象"<br />      property="网页中的value值其值一般是value"<br />      labelProperty="网页中显示的标签,其值一般是lable"/&gt;<br />&lt;!--######################################################################--&gt;<br />    &lt;html:optionsCollection<br />      name="page|request|response|session中存在的属性名称"<br />      property="属性对象中的成员变量"<br />      label="成员变量中的成员变量"<br />      value="成员变量中的成员变量" /&gt;<br />  &lt;/html:select&gt;<br />&lt;/html:form&gt;<br />&lt;!--######################################################################--&gt;</div>
		</div>
<img src ="http://www.blogjava.net/fisher/aggbug/92152.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/fisher/" target="_blank">Fisher</a> 2007-01-06 09:55 <a href="http://www.blogjava.net/fisher/articles/92152.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>struts标签logic</title><link>http://www.blogjava.net/fisher/articles/92153.html</link><dc:creator>Fisher</dc:creator><author>Fisher</author><pubDate>Sat, 06 Jan 2007 01:55:00 GMT</pubDate><guid>http://www.blogjava.net/fisher/articles/92153.html</guid><wfw:comment>http://www.blogjava.net/fisher/comments/92153.html</wfw:comment><comments>http://www.blogjava.net/fisher/articles/92153.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/fisher/comments/commentRss/92153.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/fisher/services/trackbacks/92153.html</trackback:ping><description><![CDATA[
		<h4 class="TextColor1" id="subjcns!E1EAC04AC7089B5E!221" style="MARGIN-BOTTOM: 0px">struts标签logic</h4>
		<div id="msgcns!E1EAC04AC7089B5E!221">
				<div>&lt;!--#################################################################--&gt;<br />&lt;!-- &lt;logic:equal&gt;和&lt;logic:notEqual&gt;判断变量的值与指定常量是否相等 --&gt;<br />&lt;logic:equal<br />  name="request,page,response,session中存在的以此名称命名的变量"<br />  property="此变量中的成员变量"<br />  parameter="将要取得的变量的标识符,此变量存在于request|page|response|session中"<br />  scope="取得变量的范围 request|page|response|session"<br />  value=" 参加比对的值 "&gt;<br />  若判断成立,则输出此处的内容!<br />  &lt;/logic:equal&gt;<br />&lt;!--=====================================================================--&gt;<br />&lt;logic:notEqual<br />  name="request,page,response,session中存在的以此名称命名的变量"<br />  property="此变量中的成员变量"<br />  parameter="将要取得的变量的标识符,此变量存在于request|page|response|session中"<br />  scope="取得变量的范围 request|page|response|session"<br />  value=" 参加比对的值 "&gt;<br />  若判断成立,则输出此处的内容!<br />  &lt;/logic:notEqual&gt;<br />&lt;!--#################################################################--&gt;<br />&lt;logic:iterate<br />  id="唯一标识符"<br />  name="在request|response|session|page中的标识符"<br />  property="若是自定义类对象,此处用语表示此对象中的属性名"<br />  type="取得的对象的权限定类名"<br />  indexId="indexid"<br />  offset="起始位置"<br />  length="循环的长度"&gt;<br />  &lt;li&gt;&lt;em&gt;&lt;bean:write name="与logic:iterate的属性id的内容一致" /&gt;&lt;/em&gt;&amp;nbsp;[&lt;bean:write name="index"/&gt;]&lt;/li&gt;<br />&lt;/logic:iterate&gt;<br /><br />&lt;!--#################################################################--&gt;<br />&lt;!--&lt;logic:empty&gt;与&lt;logic:notEmpty&gt;用于判断指定参数的属性值是否是null值或是空字符串""--&gt;<br />&lt;!--判断scope中存在的指定参数名的变量值是否是null值或是空字符串,若是null或空字符串则输出标签之间的内容--&gt;<br />&lt;logic:empty<br />  name="对象的唯一标识符"<br />  scope="page|request|response|session"<br />  property="对象中存在的成员变量"&gt;<br />empty<br />&lt;/logic:empty&gt;<br />&lt;!--判断scope中存在的指定参数名的变量值是否不是null值或是空字符串,若不是null或空字符串则输出标签之间的内容--&gt;<br />&lt;logic:notEmpty<br />  name="对象的唯一标识符"<br />  scope="page|request|response|session"<br />  property="对象中存在的成员变量"&gt;<br />notEmpty<br />&lt;/logic:notEmpty&gt;<br />&lt;!--#################################################################--&gt;<br />&lt;!--&lt;logic: present&gt;与&lt;logic:notPresent&gt;用于判断指定参数的属性是否存在--&gt;<br />&lt;!--判断cookie中是否存在指定参数名的变量若存在则输出标签之间的内容--&gt;<br />&lt;logic: present<br />  cookie="cookie中存在的变量名"&gt;<br />  此处是输出内容!<br />  &lt;/logic: present&gt;<br />&lt;!--判断header中是否存在指定参数名的变量若存在则输出标签之间的内容--&gt;<br />&lt;logic: present<br />  header="取得头部元素中存在的变量"&gt;<br />  此处是输出内容!<br />  &lt;/logic: present&gt;<br />&lt;!--判断scope中是否存在指定参数名的变量若存在则输出标签之间的内容--&gt;<br />&lt;logic: present<br />  name="属性名"<br />  property="对象中存在的成员变量"<br />  scope="page|request|response|session"&gt;<br />  此处是输出内容!<br />  &lt;/logic: present&gt;<br />&lt;!--=================================================================--&gt;<br />&lt;!--判断cookie中是否存在指定参数名的变量若存在则输出标签之间的内容--&gt;<br />&lt;logic:notPresent<br />  cookie="cookie中可能存在的变量名"&gt;<br />  此处是输出内容!<br />  &lt;/logic:notPresent&gt;<br />&lt;!--判断header中是否存在指定参数名的变量若存在则输出标签之间的内容--&gt;<br />&lt;logic:notPresent<br />  header="头部元素中存在的变量"&gt;<br />  此处是输出内容!<br />  &lt;/logic:notPresent&gt;<br />&lt;!--判断scope中是否存在指定参数名的变量若存在则输出标签之间的内容--&gt;<br />&lt;logic:notPresent<br />  name="属性名"<br />  property="对象中可能存在的成员变量"<br />  scope="page|request|response|session"&gt;<br />  此处是输出内容!<br />  &lt;/logic:notPresent&gt;<br />&lt;!--#################################################################--&gt;<br />&lt;!--&lt;logic:match&gt;与&lt;logic:notMatch&gt;用于判断指定参数的字符串是否区配某个给定标准--&gt;<br />&lt;!--判断cookie中存在指定参数名的变量的值,是否与指定的字符格式区配若区配则输出此内容--&gt;<br />&lt;logic:match<br />  cookie="cookie中可能存在的变量名"<br />  location="contains|start|end"<br />  value="要区配的字符格式"&gt;<br />&lt;/logic:match&gt;<br />&lt;!--判断header中存在指定参数名的变量的值,是否与指定的字符格式区配若区配则输出此内容--&gt;<br />&lt;logic:match<br />  header="header中可能存在的变量名"<br />  location="contains|start|end"<br />  value="要区配的字符格式"&gt;<br />&lt;/logic:match&gt;<br />&lt;!--判断scope中存在指定参数名的变量的值,是否与指定的字符格式区配若区配则输出此内容--&gt;<br />&lt;logic:match<br />  name="存在的属性名"<br />  property="属性对象中的成员变量"<br />  scope="page|request|response|session"<br />  location="contains|start|end"<br />  value="要区配的字符格式"&gt;<br />&lt;/logic:match&gt;<br />&lt;!--===================================================================--&gt;<br />&lt;!--判断cookie中存在指定参数名的变量的值,是否与指定的字符格式区配若区配则输出此内容--&gt;<br />&lt;logic:notMatch<br />  cookie="cookie中可能存在的变量名"<br />  location="contains|start|end"<br />  value="要区配的字符格式"&gt;<br />&lt;/logic:notMatch&gt;<br />&lt;!--判断header中存在指定参数名的变量的值,是否与指定的字符格式区配若区配则输出此内容--&gt;<br />&lt;logic:notMatch<br />  header="header中可能存在的变量名"<br />  location="contains|start|end"<br />  value="要区配的字符格式"&gt;<br />&lt;/logic:notMatch&gt;<br />&lt;!--判断scope中存在指定参数名的变量的值,是否与指定的字符格式区配若区配则输出此内容--&gt;<br />&lt;logic:notMatch<br />  name="存在的属性名"<br />  property="属性对象中的成员变量"<br />  scope="page|request|response|session"<br />  location="contains|start|end"<br />  value="要区配的字符格式"&gt;<br />&lt;/logic:notMatch&gt;<br />&lt;!--#################################################################--&gt;<br />&lt;!--&lt;logic:forward&gt;用于地址转向到指定位置--&gt;<br />&lt;logic:forward name="与系统配置文件中的&lt;global-forward&gt;元素中的子元素&lt;forward&gt;区配"/&gt;<br />&lt;!--#################################################################--&gt;<br />&lt;!-- &lt;logic:redirect&gt;用于地址重定向到指定位置 --&gt;<br />&lt;logic:redirect<br />  anchor=""<br />  forward=""<br />  href=""<br />  name=""<br />  page=""<br />  paramId=""<br />  paramName=""<br />  paramProperty=""<br />  paramScope=""<br />  property=""<br />  scope=""<br />  transaction=""&gt;连接内容&lt;/logic:redirect&gt; </div>
		</div>
<img src ="http://www.blogjava.net/fisher/aggbug/92153.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/fisher/" target="_blank">Fisher</a> 2007-01-06 09:55 <a href="http://www.blogjava.net/fisher/articles/92153.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>struts标签bean</title><link>http://www.blogjava.net/fisher/articles/92151.html</link><dc:creator>Fisher</dc:creator><author>Fisher</author><pubDate>Sat, 06 Jan 2007 01:54:00 GMT</pubDate><guid>http://www.blogjava.net/fisher/articles/92151.html</guid><wfw:comment>http://www.blogjava.net/fisher/comments/92151.html</wfw:comment><comments>http://www.blogjava.net/fisher/articles/92151.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/fisher/comments/commentRss/92151.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/fisher/services/trackbacks/92151.html</trackback:ping><description><![CDATA[
		<font size="2">
				<h4 class="TextColor1" id="subjcns!E1EAC04AC7089B5E!223" style="MARGIN-BOTTOM: 0px">struts标签bean</h4>
				<div id="msgcns!E1EAC04AC7089B5E!223">
						<div>&lt;!-- ################################################################ --&gt;<br />&lt;!--<br />访问cookie的信息内容<br />此标签主要是用于在jsp中将一个cookie附给一个指定的变量<br />以便于在jsp中应用<br />--&gt;<br />&lt;bean:cookie id="唯一标识符" name="存在的cookie属性名"/&gt;<br />&lt;!-- ################################################################ --&gt;<br />&lt;!--<br />访问cookie的信息内容<br />此标签主要是用于在jsp中将scop中一个的属性附给一个指定的变量<br />以便于在jsp中应用<br />--&gt;<br />&lt;bean:define<br />  id="唯一标识符"<br />  name="在page|request|response|session中存在的标识符"<br />  property="对象中的成员变量"<br />  scope="page|request|response|session"<br />  toScope="存放此对象的范围page|request|response|session"<br />  type="此对象的数据类型(权限定类名)"<br />  value="默认初始化值"/&gt;<br />&lt;!-- ################################################################ --&gt;<br />&lt;!--<br />访问头部元素的信息内容<br />&lt;bean:header&gt;标签是用于将头部信息中的一个元素属性附给一个指定的变量<br />以便于在jsp中应用<br />--&gt;<br />&lt;bean:header id="唯一标识符" name="头部元素中存在的属性名"/&gt;<br />&lt;!-- ################################################################ --&gt;<br />&lt;!--<br />访问头部元素的信息内容<br />&lt;bean:include&gt;标签是用于web应用程序中的一个资源引进当前jsp中,<br />并且将指向它的一个地址附给指定的变量<br />以便于在jsp中应用<br />--&gt;<br />&lt;bean:include id="唯一标识符" page="包含的web组件的uri路径,以 / 开头" /&gt;<br />&lt;!-- ################################################################ --&gt;<br />&lt;!--<br />&lt;bean: page&gt;标签主要用于访问jsp中的隐含对象,<br />  page|request|response|session|application<br />  将此属性附给一个指定变量<br />--&gt;<br />&lt;bean: page id="唯一标识符" name="jsp中的隐含对象"/&gt;<br />&lt;!-- ################################################################ --&gt;<br />&lt;!--<br />&lt;bean: parameter&gt;标签<br />  用于访问请求参数 ,<br />  将此属性附给一个指定的变量,便于在当前jsp中应用<br />--&gt;<br />&lt;bean: parameter<br />  id="唯一标识符"<br />  name="参数名"<br />  value="默认值"<br />  multiple="??????"/&gt;<br />&lt;!-- ################################################################ --&gt;<br />&lt;!--<br />&lt;bean:resource&gt;<br />访问系统配置中的资源绑定信息 Resource Bundle<br />此标签的作用是,将指向系统配置中的某个资源的指针,附给指定变量,以便于在当前页中调用<br />--&gt;<br />&lt;bean:resource<br />  id="唯一标识符"<br />  name="包含的 web uri 路径,以 / 开头"<br />  input="?????" /&gt;<br />&lt;!-- ################################################################ --&gt;<br />&lt;!--<br />&lt;bean:size&gt; 用于取得某个指定数据容器的深度大小 ,并且将此值附给一个指定变量名<br />--&gt;<br />&lt;bean:size<br />  id="唯一标识符"<br />  name="page|request|response|session中存在的属性变量名"<br />  property="变量中的成员变量名"<br />  scope="作用范围page|request|response|session"<br />  collection="java.util.Collection类变量" /&gt;<br />&lt;!-- ################################################################ --&gt;<br />&lt;!--<br />&lt;bean:write&gt; 用于输出指定变量的内容值<br />--&gt;<br />&lt;bean:write<br />  name="page|request|response|session中存在的属性变量名"<br />  property="变量中的成员变量名"<br />  filter="true|false"<br />  format="书写格式"<br />  formatKey="索引主键,此主键与系统配置文件中的主键区配"<br />  scope="作用范围page|request|response|session"<br />  bundle="??????" ignore="??????" locale="??????"<br />  /&gt;<br />&lt;!-- ################################################################ --&gt;<br />&lt;!--<br />&lt;bean:message&gt; 用于输出资源配置中的信息内容<br />--&gt;<br />&lt;bean:message<br />  bundle="系统配置文件中的绑定参数"<br />  key="与系统配置中的资源文件中的主键区配" /&gt;<br />&lt;bean:message<br />  bundle="系统配置文件中的绑定参数"<br />  name="scope中存在的属性名"<br />  scope="page|request|response|session"<br />  property="属性对象中的成员变量名,并且此属性变量的值与key的值相同" /&gt;<br /></div>
				</div>
		</font>
<img src ="http://www.blogjava.net/fisher/aggbug/92151.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/fisher/" target="_blank">Fisher</a> 2007-01-06 09:54 <a href="http://www.blogjava.net/fisher/articles/92151.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>