struts tags详解之<s:bean>

Description

    Bean标签,当然需要一个JavaBean。它的属性值的操作是经由Bean标签中的参数属性来进行赋值。当然,它还有一个id属性可以进行赋值,这样就可以在上下文中使用这个Bean

如果在BeanTag中设置了var属性值,那么它将把实例化后的bean放入到stack's Context中。

Parameters

名称

必需

数据类型

描述

Id

False

String

已弃用,var代替

Name

true

String

bean的实例化类的名称(必须遵循JavaBean规范)

Var

False

String

用于引用到Value Stack中的值的名称

Examples

1 <-- in jsp form -->
2 <s:bean name="org.apache.struts2.example.counter.SimpleCounter" var="counter">
3 <s:param name="foo" value="BAR" />
4 The value of foot is : <s:property value="foo"/>, when inside the bean tag
5 </s:bean>

这个例子实例化了一个名叫SimpleCounter的bean,并设置foo属性(setFoo(‘BAR’))。然后将SimpleCounter对象压入值栈(Valuestack)中,这意味着我们可以调用property tag的访问方法(getFoo())来得到它的值。

在上面的例子中,id的属性值已经设为counter,这意味着SimpleCounter对象压入值栈(Valuestack)后可以通过如下标签来访问它:

1 <-- jsp form -->
2 <s:property value="#counter" />

1.WebRoot/pages/dataTags/beanTag.jsp,代码如下:

 1 <%@ page contentType="text/html; charset=GBK" %>
2 <%@ taglib prefix="s" uri="/struts-tags" %>
3 <html>
4 <head>
5 <title>Bean Tag 示例</title>
6 </head>
7 <body>
8 <h2>Bean Tag 示例</h2>
9 <s:bean name="com.sterning.companyName" id="uid">
10 <s:param name="name">sterning</s:param>
11 <s:property value="%{name}" /><br>
12 </s:bean>
13 </body>
14 </html>

其关联的JavaBean是com.sterning.companyName,同时参数name赋值为sterning。

2.首先创建Action进行跳转, src/com/sterning/beanTag.java,代码如下:

package com.sterning;
import com.opensymphony.xwork2.ActionSupport;
public class beanTag extends ActionSupport {
public String execute() throws Exception{
return SUCCESS;
}
}

  

然后创建JavaBean,src/com/sterning/companyName.java,代码如下:

 1 package com.sterning;
2 public class companyName {
3 private String name;
4 public void setName(String name){
5 this.name =name ;
6 }
7 public String getName(){
8 return name;
9 }
10
11 }

  

3.Struts.xml的配置

这里配置很简单,与前面的例子差不多。

1 <action name="beanTag" class="com.sterning.beanTag">
2 <result name="success">/pages/dataTags/beanTag.jsp</result>
3 </action>

运行结果如下:

struts2 tags详解之<s:property>

Description

用于获取一个属性的值。Property顾名思义,可以与<s:bean>标签结合使用,一个是给bean赋值,一个是从bean中读取值。

Examples

 <s:push value="myBean">
<!-- Example 1: -->
<s:property value="myBeanProperty" />
<!-- Example 2: -->TextUtils
<s:property value="myBeanProperty" default="a default value" />
</s:push>

result:

Example 1 prints the result of myBean's getMyBeanProperty() method.
Example 2 prints the result of myBean's getMyBeanProperty() method and if it is null, print 'a default value' instead.

Struts2 tags详解之<s:set>

Set标签比较简单。Set标签用户将某一值赋给某一变量,因此,任何对该项值的引用都可以通过该变量来得到该值。该变量的活动范围可自定义。如下例中,定义一健/值对,对值的引用,直接引用值就可以。。请看示例

1.WebRoot/pages/dataTags/ setTag.jsp

 <%@ page contentType="text/html; charset=GBK" %>

 <%@ taglib prefix="s" uri="/struts-tags" %>

 <html>

        <head>

               <title>Set Tag 示例</title>

        </head>

        <body>

               <h2>Set Tag 示例</h2>

                      <s:set name="technologyName" value="%{'Java'}"/>

                             Technology Name: <s:property value="#technologyName"/>

        </body>

 </html> 

2.Struts.xml配置

   <action name="setTag">

          <result>/pages/dataTags/setTag.jsp</result>

    </action>

3.运行效果

Struts tags--Data tags的更多相关文章

  1. Vue - 内部指令

    1.插值 A:<span>TEXT:{{text}}</span> {{text}}会被相应的数据类型text属性值替换,当text值改变时候,文本中的值也会相应的发生变化 B ...

  2. vue学习笔记之v-for与-repeat

    今天看到一个v-repeat的例子 <body> <ul id="tags"> <li v-repeat="tags"> { ...

  3. matplotlib读取csv文件

    一,从本地加载csv文件 from matplotlib import pyplot as pltimport numpy as npimport csv#用来正常显示中文标签plt.rcParams ...

  4. BERT-Pytorch版本代码pipline梳理

    最近在做BERT的fine-tune工作,记录一下阅读项目https://github.com/weizhepei/BERT-NER时梳理的训练pipline,该项目基于Google的Transfor ...

  5. 基于MVC4+EasyUI的Web开发框架经验总结(1)-利用jQuery Tags Input 插件显示选择记录

    最近花了不少时间在重构和进一步提炼我的Web开发框架上,力求在用户体验和界面设计方面,和Winform开发框架保持一致,而在Web上,我主要采用EasyUI的前端界面处理技术,走MVC的技术路线,在重 ...

  6. Helpers\Tags

    Helpers\Tags The tags helper is a collection of useful methods: Tags::clean($data) Clean function to ...

  7. jQuery Tags Input 插件显示选择记录

    利用jQuery Tags Input 插件显示选择记录 最近花了不少时间在重构和进一步提炼我的Web开发框架上,力求在用户体验和界面设计方面,和Winform开发框架保持一致,而在Web上,我主要采 ...

  8. (转)基于MVC4+EasyUI的Web开发框架经验总结(1)-利用jQuery Tags Input 插件显示选择记录

    http://www.cnblogs.com/wuhuacong/p/3667703.html 最近花了不少时间在重构和进一步提炼我的Web开发框架上,力求在用户体验和界面设计方面,和Winform开 ...

  9. Building Applications with Force.com and VisualForce (DEV401) (二十):Visualforce Pages: Visualforce Componets (Tags)

    Dev401-021:Visualforce Pages: Visualforce Componets (Tags) Module Agenda1.Tag Basics2.Tag Bindings T ...

  10. Building Applications with Force.com and VisualForce(Dev401)(十九):Visualforce Pages: Visualforce Componets (Tags)

    Dev401-020:Visualforce Pages: Visualforce Componets (Tags) Module Agenda1.Tag Basics2.Tag Bindings T ...

随机推荐

  1. posix 匿名信号量与互斥锁 示例生产者--消费者问题

    一.posix 信号量 信号量的概念参见这里.前面也讲过system v 信号量,现在来说说posix 信号量. system v 信号量只能用于进程间同步,而posix 信号量除了可以进程间同步,还 ...

  2. POSIX 消息队列 和 系列函数

    一.在前面介绍了system v 消息队列的相关知识,现在来稍微看看posix 消息队列. posix消息队列的一个可能实现如下图: 其实消息队列就是一个可以让进程间交换数据的场所,而两个标准的消息队 ...

  3. [Jobdu] 题目1369:字符串的排列

    题目描述: 输入一个字符串,按字典序打印出该字符串中字符的所有排列.例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba. 输入: 每个 ...

  4. [k8s] kubelet单组件启动静态pod

    kubelet单组件启动静态pod 无需k8s其他组件,单独下载kubelet的二进制,可以启动静态pod. 静态pod不受api管理,kubectl get po可以看到,但是kubectl del ...

  5. Memory Analyzer tool(MAT)分析内存泄漏---理解Retained Heap、Shallow Heap、GC Root

    Shallow Heap Size 指对象自身所占用的内存大小,不包含其引用的对象所占的内存大小. 1.数组类型 数组元素对象所占内存的大小总和. 2.非数组类型 对象与它所有的成员变量大小的总和.当 ...

  6. [转帖]cocos2D-X源码分析之从cocos2D-X学习OpenGL(3)----BATCH_COMMAND

    原贴: cocos2D-X源码分析之从cocos2D-X学习OpenGL(3)----BATCH_COMMAND 上一篇介绍了QUAD_COMMAND渲染命令,顺带介绍了VAO和VBO,这一篇介绍批处 ...

  7. 转载:Jmeter教程索引

    摘自: 阳光温暖了心情 的 http://www.cnblogs.com/yangxia-test/category/431240.html 1 JMeter学习(一)工具简单介绍 2 JMeter学 ...

  8. maven jetty指定端口启动

    eclipse里修改 Goals值 Tomcat -Dmaven.tomcat.port=8080 tomcat:run Jetty -Djetty.port=8081 jetty:run

  9. Cannot complete request to Marketplace不能打开eclipse marketplace

    当打开eclipse marketplace的时候时候,发现有如下错误: --------------------------------------------------------------- ...

  10. C++笔记 4

    1.类和对象   类就是对对象的描述,主要从属性和行为两个方面描述.   对于属性一般作成private , 行为作为public   函数 (1)构造函数,初始化所有的成员变量,系统自动调用,可以重 ...