`

struts bean 标签详解

阅读更多

Struts Bean标签库中的标签可以访问已存在的JavaBean以及它们的属性,还可以定义新的Bean,把它存放在page范围内或用户指定的范围内,供网页其他元素访问。Bean标签库大概分为三类:

  • 用于访问HTTP请求信息或JSP隐含对象的Bean标签
  • 用于访问Web应用资源的Bean标签
  • 用于定义或者输出JavaBean的Bean标签

访问HTTP请求信息或JSP隐含对象
  • <bean:cookie>:访问Cookie信息
  • <bean:header>:访问HTTP请求中的Header信息
  • <bean:parameter>;访问请求参数。
  • <bean:page>:访问JSP隐含对象。

1.<bean:cookie>标签

该标签可以检索保存在浏览器中的Cookie,具有属性id,name,multiple,value,id是对cookie在该页面中的唯一标识,在页面其它地方可以通过id进行引用。相当于用cookie直接引用。Name是相应的cookie名称。Multiple可以赋予任意值,如果设置了该属性,可以检索出所有和Cookie名字匹配的Cookie名字匹配的Cookie,此时,id属性定义了一个Cookie数组类型的变量,而不是单个Cookie类型的变量。例如:

<bean:cookie id="myCookie" name="tags/cookiedemo" value="ddddddddd"/>
<bean:write name="myCookie" property="name"/>
<bean:write name="myCookie" property="value"/>
<%

String names=myCookie.getName();
String value=myCookie.getValue();
out.println("this cookie name is "+names+",value is "+value+"");

%>

2.<bean:header>标签

该标签用于检索HTTP请求中的Header信息。如果没有指定multiple属性则依据刚取回的值创建一个String类型的bean。如果指定了multiple属性则依据刚取回的值创建一个String[]类型的数组。例如:

<logic:present header="User-Agent">
<!-- 其它标签通过绑定到page作用域中的属性使用该值 -->
您的浏览器是<bean:header id="userAgent" name="User-Agent"/>
<bean:write name="userAgent" /><br/>
<!-- JSP脚本通过scripting变量使用该值 -->
<%
out.println("您的浏览器是"+userAgent+"。<br/>");
%>
</logic:present>
<%
String id = "userAgent";
String name = "User-Agent";
String value = ((HttpServletRequest)pageContext.getRequest()).getHeader(name);
out.println("============="+value);

%>

3.<bean:parameter>标签

该标签用于检索HTTP请求参数,具有以下属性:
id属性:定义一个java.lang.String类型的变量,这个变量存放在page范围内。
name属性:指定请求参数名。
value属性:请求指定参数的默认值

如果没有指定multiple属性则依据刚取回的值创建一个String类型的bean。如果指定了multiple属性则依据刚取回的值创建一个String[]类型的数组。例如:

<html:link page="/parameter2.jsptestString=this+is+a+test&testInt=123456">
请求参数
</html:link>

<bean:parameter id="test1" name="testString" value="" />
The first test is: <bean:write name="test1" />

<bean:parameter id="test2" name="testInt" value=""/>
The second test is:<bean:write name="test2"/>

4.<bean:page>标签

该标签用于检索获取JSP隐含对象,如session、request和response等,具有以下属性:
id属性:定义了一个引用隐含对象的变量,这个变量存放在page范围
property属性:指定隐含对象的名字,可选值包括application,config,request,response,session 例如:

<bean:page id="mySession" property="session"/>

<%
out.println("Session time:"+mySession.getCreationTime());

%>

<bean:message>:显示Resource Bundle中的消息。
<bean:resource>;把Web资源装载到一个JavaBean中。
<bean:struts>;访问Struts的内在配置对象。
<bean:include>;包含一个web资源。

1.<bean:include>标签
该标签用语将其他web资源包含进当前页面中,和标准的JSP标签<jsp:include>很类似,都可以用来包含其他Web资源的内容,区别在于<bean:include>标签把其他的Web资源的内容存放在一个对象中,而不是直接显示到网页,<bean:include>标签的id属性定义一个代表其他Web资源的变量。
<bean:include id="value" page="/index.jsp"/> //在当前资源中
<bean:write name="value" filter="false"/><br/>
// filter为true则为原文件
<%
out.println(value);
%>
2.<bean:message>标签
该标签用与显示资源文件中的消息文本。该标签有一个bundle属性,它和struts-config.xml文件中的messsge-resources标记内的key属性对应。
<message-resources parameter="com.resources" key="beanmessage">
//struts-config
message1=this is a test!
message2=this is a test too!
//resource中
<bean:message bundle="beanmessage" key="message1"/>
//jsp中
3.<bean:resource>标签
该标签用于检索、获得Web资源内容,如:网页的源代码。该标签的属性有:id有其他标签一样,name指定Web资源的路径,input如果没有设置,则id属性默认为一个字符类型对象,如果给input赋值yes,则id属性所定义的对象为java.IputStream。例如:
<bean:resource id="indexpage" name="/index.jsp" input="yes"/>
<bean:write name="indexpage" filter="false"/>
4.<bean:struts>标签
该标签用于获取Struts框架内的一些对象,如AationForm和ActionForward等。。<bean:struts>标签的id属性定义一个page范围的变量,用来引用Struts框架的内在对象,必需设置formbean,forward,mapping属性中的一个属性,来指定被引用的Struts内在对象。
formbean属性:指定ActionFormBean对象,和struts配置文件的<form-bean>元素匹配。
forward属性;指定ActionForward对象,和配置文件的<global-forwards>元素的<forward>子元素匹配。
mapping属性:指定ActionMapping对象,和配置文件的<action>元素匹配
例如:
<bean:struts id="listFormBean" formBean="listForm"/>
name:<bean:write name="listFormBean" property="name"/><br/>
type:<bean:write name="listFormBean" property="type"/><br/>
dynamic:<bean:write name="listFormBean" property="dynamic"/><br/>

 

<bean:define>:用于定义一个变量。
<bean:write>: 显示JavaBean属性的内容。
<bean:size>: 获得集合对象或数组对象的长度。
1.<bean:define>标签

该标签用于定义一个变量,id属性指定变量的名字,toScope属性指定这个变量的存放范围,如果没有设置,则这个变量存放在page范围内,给id属性定义的变量赋值有三种方式:
第一种是,通过value属性直接赋值;
第二种是,通过name和porperty共同指定一个变量来给id所定义的变量,name——bean,porperty——属性;
第三种是,通过type属性和name联合指定id所定义的变量类型,type——id定义变量的完整类型,name——存在的javaBean。例如:
<bean:define id="string" value="this is a test"/>
<bean:write name="string"/>--%>
<%
Date d = new Date();
pageContext.setAttribute("currDate",d);
%>
<bean:define id="milliseconds" name="currDate" property="time"/>
当前时间距离1970年1月1日的毫秒数为:<bean:write name="milliseconds"/>
2.<bean:size>标签

该标签用于获取集合或者数组的长度。
id属性定义一个Integer类型的变量,那么属性指定已经存在的Map,Collection或数组变量,id属性定义的变量值为Map,collection或数组的长度。
name属性为对象名字。例如:

<%
ArrayList testlist=new ArrayList();
testlist.add(new Integer(1));
testlist.add(new Integer(2));
testlist.add(new Integer(3));
pageContext.setAttribute("listforcount",testlist);
%>
<bean:size id="size" name="listforcount"/>
长度为:<bean:write name="size"/>
3.<bean:write>标签

该标签用于输出各种类型的对象,有点类似与System.out.println()。例如:
<%
String a = "string for test";
pageContext.setAttribute("test",a);
%>
<bean:write name="test"/>
分享到:
评论

相关推荐

    struts自定义标签详解

    举例解说Bean Tags,HTML Tags 以及Logic Tags的使用方法。

    Struts所有标签详解

    里面包括&lt;html&gt;&lt;bean&gt;&lt;logic&gt;&lt;tiles&gt;&lt;nested&gt;&lt;br&gt;五组标签库的详细讲解,每个标签库都对应着 相应的例子(标签多的标签库有两个例子)。 另外还有国际化(文字国际化/图片国际化)、 表单验证,以及验证...

    struts标签详解

    Struts提供了五个标签库,即:HTML、Bean、Logic、Template和Nested。 HTML 标签 : 用来创建能够和Struts 框架和其他相应的HTML 标签交互的HTML 输入表单 Bean 标签: 在访问JavaBeans 及其属性,以及定义一个新...

    Struts配置及标签库详解

    包括struts配置和标签库详解,以及常用的几个标签库文件,struts-html.tld,struts-bean.tld,struts-logic.tld,struts-nested.tld

    Struts常用标签库详解

    Struts框架中提供一系列的自定义标记,用来在视图层实现数据的表示。...例如,在Struts框架中有一个标记,这个标记是用来提交表单的,Struts框架够把这个表单的数据自动映射到相对应的ActionForm Bean中去

    Struts标签资料(Struts标签大全)

    其中包含Struts标签大全 jsp Struts之HTML标签库详解 struts框架bean,html,logic标签手册等内容。不错,其中的JSP Struts之HTML标签库详解 .doc是朋友总结的。不错!

    JSP Struts之HTML标签库详解

    Struts提供了五个标签库,即:HTML、Bean、Logic、Template和Nested。

    struts标签详解.chm

    例如:定义一个bean: &lt;bean:define id=”test” value=”this is a test”/&gt; 源bean在页作用域中被拷贝大哦请求作用域中的另一个bean: &lt;bean:define id=”targetBean” name=”sourceBean” scope=”page” toScope=...

    Struts基础与案例开发详解04

    Struts基础与案例开发详解04,这一章主要讲的是struts的标签库!有html 标签,bean标签,logic标签,template 标签和nested标签这5种!

    Struts标签手册

    Struts标签的详解,包括中文和英文的查询,有详细例子解释

    struts配置元素详解

    ”1.0” encoding=”ISO-8859-1”?&gt; &lt;!DOCTYPE struts-config PUBLIC "-//... &lt;form-bean / &gt; path="" attribute="" type="" name="" scope="" validate="" input="" / &gt; &lt;/struts-config&gt;

    Struts2属性文件详解

    Struts2属性文件详解 struts.configuration 该属性指定加载Struts 2配置文件的配置文件管理器.该属性的默认值是org.apache.Struts2.config.DefaultConfiguration, 这是Struts 2默认的配置文件管理器.如果需要实现...

    低清版 大型门户网站是这样炼成的.pdf

    第3章 struts 2标签库详解与ajax技术应用 103 3.1 struts 2主题与模板 103 3.2 struts 2控制标签详解 105 3.2.1 if/elseif/else标签详解 105 3.2.2 iterator标签详解 106 3.2.3 append标签详解 108 3.2.4 ...

    Struts_config.xml详解

    scope="request" //指定ActionForm Bean的存在范围,可选值为request和session。默认为session &gt;&gt;&gt;&gt; suffix="" // 指定填充当前 Action 的关联 FormBean 时,要添加到请求参数名称的后缀,因此,如果请求参数名为 ...

    J2EE应用开发详解

    104 第8章 Struts2框架 105 8.1 Web应用的发展 105 8.2 Struts2的起源和体系结构 106 8.3 Struts2核心部分详解 108 8.3.1 核心控制器FilterDispatcher 108 8.3.2 业务逻辑控制器Action 111 8.3.3 业务逻辑组件 116 ...

    大型门户网站是这样炼成的 源码下载

    第3章 Struts2标签库详解与AJAX技术应用 第4章 ORM中间件名流Hibernate3接管持久层 第5章 Hibernate3持久化技术实践与性能优化 第6章 充分利用Spring2的IOC利器统管Bean世界 第8章 通用新闻采集系统 综合实例-免费...

    跟我学javaweb全套ppt

    《跟我学Java Web》内容包括搭建Web开发环境、HTML相关技术基础知识、...详解(拦截器、输入校验、国际化、Struts2的各种标签、对Ajax的支持等)、Spring2.5(容器、装配Java Bean、JDBC和Hibernate模板等)以及...

    跟我学Java_Web源代码

    《跟我学Java Web》内容包括搭建Web开发环境、HTML相关技术基础知识、...详解(拦截器、输入校验、国际化、Struts2的各种标签、对Ajax的支持等)、Spring2.5(容器、装配Java Bean、JDBC和Hibernate模板等)以及...

    大型门户网站是这样炼成的!源码

    第3章 Struts2标签库详解与AJAX技术应用 第4章 ORM中间件名流Hibernate3接管持久层 第5章 Hibernate3持久化技术实践与性能优化 第6章 充分利用Spring2的IOC利器统管Bean世界 第8章 通用新闻采集系统 综合实例-免费...

    Struts in Action中文版

    2.6.2. Struts的强项........................................................................................................58 Struts in Action 中文版 Lastest Revised:10/14/2005 10:27:00 AM ...

Global site tag (gtag.js) - Google Analytics