`
applepieone
  • 浏览: 11634 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
最近访客 更多访客>>
社区版块
存档分类
最新评论

<jsp:setProperty>

 
阅读更多

13.4 jsp:setProperty动作

   jsp:setProperty用来设置已经实例化的Bean对象的属性,有两种用法。首先,你可以在jsp:useBean元素的外面(后面)使用jsp:setProperty,如下所示:

<jsp:useBean id="myName" ... />
...
<jsp:setProperty name="myName"
property="someProperty" ... />


   此时,不管jsp:useBean是找到了一个现有的Bean,还是新创建了一个Bean实例,jsp:setProperty都会执行。第二种用法是把jsp:setProperty放入jsp:useBean元素的内部,如下所示:

<jsp:useBean id="myName" ... >
...
<jsp:setProperty name="myName"
property="someProperty" ... />
</jsp:useBean>


   此时,jsp:setProperty只有在新建Bean实例时才会执行,如果是使用现有实例则不执行jsp:setProperty。

   jsp:setProperty动作有下面四个属性:

属性 说明
name name属性是必需的。它表示要设置属性的是哪个Bean。
property property属性是必需的。它表示要设置哪个属性。有一个特殊用法:如果property的值是“*”,表示所有名字和Bean属性名字匹配的请求参数都将被传递给相应的属性set方法。
value value属性是可选的。该属性用来指定Bean属性的值。字符串数据会在目标类中通过标准的valueOf方法自动转换成数字、 boolean、Boolean、byte、Byte、char、Character。例如,boolean和Boolean类型的属性值(比如 “true”)通过Boolean.valueOf转换,int和Integer类型的属性值(比如“42”)通过Integer.valueOf转换。
value和param不能同时使用,但可以使用其中任意一个。
param param是可选的。它指定用哪个请求参数作为Bean属性的值。如果当前请求没有参数,则什么事情也不做,系统不会把null传递给Bean属性的set方法。因此,你可以让Bean自己提供默认属性值,只有当请求参数明确指定了新值时才修改默认属性值。


  例如,下面的代码片断表示:如果存在numItems请求参数的话,把numberOfItems属性的值设置为请求参数numItems的值;否则什么也不做。

<jsp:setProperty name="orderBean"
property="numberOfItems"
param="numItems" />


   如果同时省略value和param,其效果相当于提供一个param且其值等于property的值。进一步利用这种借助请求参数和属性名字相同进行 自动赋值的思想,你还可以在property(Bean属性的名字)中指定“*”,然后省略value和param。此时,服务器会查看所有的Bean属 性和请求参数,如果两者名字相同则自动赋值。

   下面是一个利用JavaBean计算素数的例子。如果请求中有一个numDigits参数,则该值被传递给Bean的numDigits属性;numPrimes也类似。

   JspPrimes.jsp

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>在JSP中使用JavaBean</TITLE>
</HEAD>

<BODY>

<CENTER>
<TABLE BORDER=5>
<TR><TH CLASS="TITLE">
在JSP中使用JavaBean</TABLE>
</CENTER>
<P>

<jsp:useBean id="primeTable" class="hall.NumberedPrimes" />
<jsp:setProperty name="primeTable" property="numDigits" />
<jsp:setProperty name="primeTable" property="numPrimes" />

Some <jsp:getProperty name="primeTable" property="numDigits" />
digit primes:
<jsp:getProperty name="primeTable" property="numberedList" />

</BODY>
</HTML>


   注:NumberedPrimes的代码略。

   13.5 jsp:getProperty动作

    jsp:getProperty动作提取指定Bean属性的值,转换成字符串,然后输出。jsp:getProperty有两个必需的属性, 即:name,表示Bean的名字;property,表示要提取哪个属性的值。下面是一个例子,更多的例子可以在前文找到。

<jsp:useBean id="itemBean" ... />
...
<UL>
<LI>Number of items:
<jsp:getProperty name="itemBean" property="numItems" />
<LI>Cost of each:
<jsp:getProperty name="itemBean" property="unitCost" />
</UL>


   13.6 jsp:forward动作

   jsp:forward动作把请求转到另外的页面。jsp:forward标记只有一个属性page。page属性包含的是一个相对URL。page的值既可以直接给出,也可以在请求的时候动态计算,如下面的例子所示:

<jsp:forward page="/utils/errorReporter.jsp" />
<jsp:forward page="<%= someJavaExpression %>" />


   13.7 jsp:plugin动作

   jsp:plugin动作用来根据浏览器的类型,插入通过Java插件 运行Java Applet所必需的OBJECT或EMBED元素。

   附录:JSP注释和字符引用约定

   下面是一些特殊的标记或字符,你可以利用它们插入注释或可能被视为具有特殊含义的字符。

语法 用途
<%-- comment --%> JSP注释,也称为“隐藏注释”。JSP引擎将忽略它。标记内的所有JSP脚本元素、指令和动作都将不起作用。
<!-- comment --> HTML注释,也称为“输出的注释”,直接出现在结果HTML文档中。标记内的所有JSP脚本元素、指令和动作正常执行。
<\% 在模板文本(静态HTML)中实际上希望出现“<%”的地方使用。
%\> 在脚本元素内实际上希望出现“%>”的地方使用。
\' 使用单引号的属性内的单引号。不过,你既可以使用单引号也可以使用双引号,而另外一种引号将具有普通含义。
\" 使用双引号的属性内的双引号。参见“\'”的说明。
分享到:
评论

相关推荐

    struts2 标签使用

    在这个例子中,我们首先使用 `&lt;s:set&gt;` 标签将一个字符串 `"China"` 设置到了一个名为 `country` 的变量中,然后使用 `&lt;s:if&gt;` 标签进行条件判断。如果 `country` 的值等于 `"China"`,则会显示 `"This is China!"`...

    <jsp实用教程>书中所有例题代码.rar

    5. JSP动作标签:`&lt;jsp:useBean&gt;`用于实例化和查找JavaBean,`&lt;jsp:setProperty&gt;`和`&lt;jsp:getProperty&gt;`则用来设置和获取Bean的属性。此外,还有`&lt;jsp:include&gt;`、`&lt;jsp:forward&gt;`等用于页面操作。 6. JSP标签库:...

    Struts2 JSP中将list,set ,Map传递到Action然后<s:iterator>遍历(三十五)

    本文将深入探讨如何在JSP中将`List`, `Set`, `Map`等集合类型的数据传递到Action,然后再通过`&lt;s:iterator&gt;`标签进行遍历显示。这种方式对于数据的展示和交互具有重要的实践意义。 首先,我们需要了解Struts2的工作...

    struts2<s:if>使用心得

    taskInstanceId=&lt;s:property value="id"/&gt;"&gt;准备资料&lt;/a&gt; &lt;/s:elseif&gt; &lt;s:else&gt; &lt;s:property value="#taskName" /&gt; &lt;/s:else&gt; &lt;/td&gt; ``` #### 代码解析 1. **设置变量**:首先,使用`&lt;s:set&gt;`标签设置两个变量...

    JSP之访问JavaBean的一个简单例子

    JSP之访问JavaBean的一个简单例子 使用useBean,jsp:setProperty,jsp:getProperty使用的一个简单例子 博客参考地址:https://blog.csdn.net/qq_36631076/article/details/79693890

    Java Web程序设计任务驱动教程课后习题参考答案 - 蓝敏、周伟敏、杨茜

    * include 指令和&lt;jsp:include&gt;动作的区别:执行时间、引入内容等 * JSP 程序里有三种注释:HTML 注释、Java 注释、JSP 隐藏注释 服务器交互 * 使用 response 对象进行重定向的方法:sendRedirect * session 对象...

    JSP动态网页设计:第9章 JSP动作元素.ppt

    标准的动作元素包括`&lt;jsp:include&gt;`、`&lt;jsp:forward&gt;`、`&lt;jsp:param&gt;`、`&lt;jsp:plugin&gt;`、`&lt;jsp:useBean&gt;`、`&lt;jsp:setProperty&gt;`和`&lt;jsp:getProperty&gt;`。 2. **&lt;jsp:include&gt;**: 这个动作元素用于动态地将一个页面...

    JSP技术知识点考查 jsp动态建站技术

    application对象代表应用程序上...&lt;jsp:getProperty&gt;操作是对&lt;jsp:setProperty&gt;操作的补充,用来访问一个Bean的属性 &lt;jsp:plugin&gt;用来产生客户端浏览器的特别标签,可以使用它来插入Applet和JavaBean &lt;jsp:fallback&gt;

    jsp语法概述,详细讲解ppt语法的ppt,适合初学者

    动作语法包括&lt;jsp:forward&gt;、&lt;jsp:include&gt;、&lt;jsp:plugin&gt;、&lt;jsp:getProperty&gt; 和 &lt;jsp:setProperty&gt; 等。 在 JSP 语法中,声明用于在页面上输出信息,语法格式如下:&lt;%! declaration; [ declaration; ] ... %&gt; 或 ...

    PPT:JSP基础知识讲解

    3. **设置属性**:使用`&lt;jsp:setProperty&gt;`标签设置JavaBean的属性值,与JavaBean的set方法相对应。例如: ```jsp &lt;jsp:setProperty name="mybean" property="radius" value="100"/&gt; ``` 4. **获取属性**:使用`...

    jsp标准动作

    该标记的语法格式为:&lt;jsp:setProperty name="bean name" property="property name" value="str" /&gt;,其中 name 属性指定了 Bean 的名称,property 属性指定了要设置的属性,value 属性指定了要设置的值。...

    jsp大作业上机练习

    JSP的动作标签如`&lt;jsp:useBean&gt;`、`&lt;jsp:setProperty&gt;`、`&lt;jsp:forward&gt;`等,简化了页面操作。例如,`&lt;jsp:useBean&gt;`用于实例化JavaBean,`&lt;jsp:setProperty&gt;`设置JavaBean的属性。 **五、JSP与Servlet的关系** ...

    JSP动作标签详细的实例代码

    &lt;jsp:setProperty name="employee" property="name" param="employeeName"/&gt; ``` 这行代码将把请求参数`employeeName`的值设置为`employee` bean的`name`属性。 5. **&lt;jsp:getProperty&gt;** `&lt;jsp:getProperty&gt;`...

    JSP脚本小总结

    &lt;jsp:setProperty name="calculator" property="value" value="5" /&gt; &lt;/jsp:useBean&gt; ``` 6. `&lt;jsp:setProperty&gt;` - 设置JavaBean属性。 ```jsp &lt;jsp:setProperty name="calculator" property="value" value=...

    jsp.rar_jsp 登录界面_jsp界面

    JSP动作元素以`&lt;jsp:`开头,如`&lt;jsp:useBean&gt;`, `&lt;jsp:setProperty&gt;`, `&lt;jsp:getProperty&gt;`等,它们主要用于操作JavaBeans。例如,`&lt;jsp:useBean&gt;`用于实例化或查找一个JavaBean,`&lt;jsp:setProperty&gt;`和`&lt;jsp:...

    JSP程序设计与案例实战

    exception)、JavaBean组件、JSP标准动作(&lt;jsp:forward&gt;,&lt;jsp:param&gt;,&lt;jsp:setProperty&gt;,&lt;jsp:plugin&gt;,&lt;jsp:include&gt;,&lt;jsp:useBean&gt;,&lt;jsp:getProperty&gt;)、JSP中使用数据库(JDBC常用API)、JSTL的配置步骤、核心...

    jsp中文手册.rar_jsp_jsp中文手册

    例如,`&lt;jsp:useBean&gt;`用来实例化或查找JavaBean,`&lt;jsp:setProperty&gt;`设置Bean的属性,`&lt;jsp:getProperty&gt;`读取Bean的属性。 5. **EL(Expression Language):** EL是一种简洁的表达式语言,用于从页面上下文中...

    JSP动作元素.pptx

    标准动作元素是JSP提供的一些基本动作元素,例如&lt;jsp:include&gt;、&lt;jsp:param&gt;、&lt;jsp:forward&gt;、&lt;jsp:useBean&gt;、&lt;jsp:getProperty&gt;、&lt;jsp:setProperty&gt;和&lt;jsp:plugin&gt;等。自定义动作元素是开发者根据需求自定义的动作...

    关于jsp的外文文献及翻译

    JSP动作(如`&lt;jsp:useBean&gt;`, `&lt;jsp:setProperty&gt;`, `&lt;jsp:getProperty&gt;`等)则用于操作JavaBean和其他资源。 1.7 JSP表达式语言(EL) EL是简化JSP页面中数据访问的表达式语法,允许开发者以更简洁的方式获取和...

    学会jsp,突击jsp

    2. **JSP动作元素**:比如`&lt;jsp:useBean&gt;`, `&lt;jsp:setProperty&gt;`, `&lt;jsp:getProperty&gt;`等,用于管理和操作JavaBean。`&lt;jsp:include&gt;`和`&lt;jsp:forward&gt;`也是动作元素,但它们属于指令的一部分。 3. **脚本元素**:...

Global site tag (gtag.js) - Google Analytics