jsp标签jsp:setProperty用法

jsp标签jsp:setProperty用法

来源:http://blog.csdn.net/wanghaishanren/article/details/2047400

<jsp:setProperty>用来设置已经实例化的Bean对象的属性

第一种形式:

<jps:setProperty name = "JavaBean实例名"  property = "*"/>

该形式是设置Bean 属性的快捷方式.在Bean 中属性的名字,类型必须和request对象中的参数名称相匹配。由于表单中传过来的数据类型都是String 类型的,Jsp内在机制会把这些参数转化成Bean属性对应的类型。

property = "*"表示所有名字和Bean属性名字匹配的请求参数都将被传递给相应的属性set方法。

第二种形式:

<jsp:setProperty name = "JavaBean实例名" property = "JavaBean属性名" />

使 用request对象中的一个参数值来指定Bean中的一个属性值。在这个语法中,property指定Bean 的属性名,而且Bean 属性和 request参数的名字应相同。也就是说,如果在Bean 中有setUserName(String userName)方法,那 么,propertyName的值就是"userName".这种形式灵活性较强,可以有选择的对Bean中的属性赋值

第三种形式:

<jsp:setProperty name = "JavaBean实例名" property = "JavaBean属性名" value = "BeanValue"/>

value 用来指定Bean属性的值。字符串数据会在目标类中通过标准的valueOf方法自动转换成数字、boolean、Boolean、byte、Byte、 char、Character。例如,boolean和Boolean类型的属性值(比如“true”)通过Boolean.valueOf转换,int 和Integer类型的属性值(比如“42”)通过Integer.valueOf转换。

第四种形式:

<jsp:setProperty name = "JavaBean实例名"

property = "propertyName" param = "request对象中的参数名"

/>

param指定用哪个请求参数作为Bean属性的值。Bean 属性和request参数的名字可以不同。如果当前请求没有参数,则什么事情也不做,系统不会把null传递给Bean属性的set方法。因此,你可以让Bean自己提供默认属性值,只有当请求参数明确指定了新值时才修改默认属性值。

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

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

下面是一个简单的例子:

//sampleBean.java

package MyJavaBeanPackage;

public class SampleBean2

{

private String id;

private String age;

private String name;

private String sex;

private String addr;

public SampleBean2()

{

}

public String getName()

{

return name;

}

public void setName(String name)

{

this.name = name;

}

public String getSex()

{

return sex;

}

public void setSex(String sex)

{

this.sex = sex;

}

public void setId(String id)

{

this.id = id;

}

public void setAge(String age)

{

this.age = age;

}

public String getId()

{

return id;

}

public String getAge()

{

return age;

}

public String getAddr()

{

return addr;

}

public void setAddr(String addr)

{

this.addr = addr;

}

}

//SampleBean.html

<html>

<head>

<title>使用<jsp:getProperty>和<jsp:setProperty>标记</title>

</head>

<body>

<form name = "form1" action = "Sample2.jsp" method = "post">

<p align = "center">编号

<input type = "text" name = "id">

</p>

<p align = "center">姓名

<input type = "text" name = "name">

</p>

<p align = "center">性别

<select name = "TheSex" id = "sex">

<option value = "男" selected>男</option>

<option value = "女">女</option>

</select>

</p>

<p align = "center">年龄

<input type = "text" name = "TheAge">

</p>

<p align = "center">

<input type = "submit" value = "提交">

<input type = "reset" value = "重置">

</p>

</form>

</body>

</html>

//SampleBean.jsp

<%@ page

language="java"

contentType = "text/html;charset = GBK"

%>

<jsp:useBean id = "sampleBean2" class = "MyJavaBeanPackage.SampleBean2"/>

<html>

<head>

<title>在JavaBean中存放数据</title>

</head>

<body>

<%--方法一

<jsp:setProperty name = "sampleBean2" property = "*" />

--%>

<%-- 方法二 --%>

<jsp:setProperty name = "sampleBean2" property = "id"/>

<jsp:setProperty name = "sampleBean2" property = "name"/>

<%--方法三 --%>

<jsp:setProperty name = "sampleBean2" property = "addr" value = "洛阳师范学院"/>

<%-- 方法四 bean属性的名字可以与request参数不同--%>

<jsp:setProperty name = "sampleBean2" property = "sex" param = "TheSex"/>

<jsp:setProperty name = "sampleBean2" property = "age" param = "TheAge"/>

<center>

编号:<jsp:getProperty name = "sampleBean2" property = "id"/><br>

姓名:<jsp:getProperty name = "sampleBean2" property = "name"/><br>

性别:<jsp:getProperty name = "sampleBean2" property = "sex"/><br>

年龄:<jsp:getProperty name = "sampleBean2" property = "age"/><br>

住址:<jsp:getProperty name = "sampleBean2" property = "addr"/><br>

</center>

</body>

</html>

//参考文献:

1<<从零开始——JSP动态网页制作基础培训教程-源代码>>

2

http://hi.baidu.com/ffcheng1987/blog/item/44c71755925761c7b645ae2c.html

98

时间: 2024-10-11 22:50:12

jsp标签jsp:setProperty用法的相关文章

JavaWeb之 JSP:内置对象,EL表达式,JSP标签基础

JSP的内置对象 什么是JSP的内置对象呢? 在JSP页面进行编程的时候,如果我们要使用一些对象,如:HttpSession,ServletConfig,ServletContext这些对象,如果每次都要先创建这些对象,然后再去使用它们,这样就显得十分繁琐了,为了方便使用者,Sun公司在开发JSP的时候,把一些对象设置为内置对象,开发者在JSP页面编程的时候不必声明这些对象就能直接使用,这就是JSP的内置对象. 那么JSP对象有哪些呢? JSP内置对象          对应的类型   备注 R

javaWeb学习总结(8)- JSP标签(6)

一.JSP标签介绍 JSP标签也称之为Jsp Action(JSP动作)元素,它用于在Jsp页面中提供业务逻辑功能,避免在JSP页面中直接编写java代码,造成jsp页面难以维护. 二.JSP常用标签 jsp的常用标签有以下三个 <jsp:include>标签 <jsp:forward>标签 <jsp:param>标签 2.1.<jsp:include>标签 <jsp:include>标签用于把另外一个资源的输出内容插入进当前JSP页面的输出内容

BodyContent揭秘及定制复杂的JSP标签

BodyContent揭秘及定制复杂的JSP标签 jsp中的定制标签功能可以帮助我们来更好地实现presentation layer.我在学习的时候,感觉最困难的就是BodyContent这个类,Sun在API和specification中对BodyContent介 绍的非常少,以至于很多程序员对这个类知之甚少. 本文的目的就是带领读者揭开这层面纱,直捣BodyContent的核心,帮助读者了解BodyContent背后的设计模式,本文还将带领读者写一个模拟while循环的标签,这个标签完全可以

Java web基础总结九之—— jsp标签

Java web基础总结九之-- jsp标签 JSP标签也称之为Jsp Action,在前面讲过,jsp的设计目的就是作为表现层.我们希望JSP页面仅用作数据显示模块,不要嵌套任何java代码引入任何业务逻辑,但在实际开发中不引入一点业务逻辑是不可能的,但引入业务逻辑会导致页面出现难看java代码.jsp的标签就是为了解决这个问题.所以jsp页面中也内置了一些标签(这些标签叫做jsp标签),开发人员使用这些标签可以完成页面的一些业务逻辑.我们也可以开发自定义标签,使jsp页面不出现一行java代

18、EL表达式、JSP标签、JSTL标签、自定义标签

EL表达式 jsp的核心语法: jsp表达式 <%=%>和 jsp脚本<% %>. 以后开发jsp的原则: 尽量在jsp页面中少写甚至不写java代码. 使用EL表达式替换掉jsp表达式 EL表达式作用: 向浏览器输出域对象中的变量值或表达式计算的结果!!! 语法: ${变量或表达式} EL语法 1 输出基本数据类型变量 从四个域获取 ${name} 指定域获取 ${pageScope.name} 域范围: pageScoep / requestScope / sessionSco

JSP标签的用法

JSP动作标签: 通过动作标签,程序员可以在JSP页面中把页面的显示功能部分 封装起来,是整个页面更简洁和易于维护 <jsp:useBean> 装载一个将在JSP页面中使用的JavaBean,发挥组件重用的优势 语法: <jsp:useBean id="name" class="packge.class" scope="page">  id:创建JavaBean的名称,可以不与Java类名相同  class:表示创建的Ja

JSP的学习(8)——JSP标签

JSP标签也称为JSP Action(JSP动作)元素,用于在JSP页面中封装Java代码,这样使得在JSP页面中避免直接编写Java代码,让JSP真正成为MVC模式中的作为视图作用. 几个JSP常用标签: <jsp:include>标签 <jsp:forward>标签 <jsp:param>标签 <jsp:useBean>标签 <jsp:setProperty>标签 <jsp:getProperty>标签 下面对这几个标签进行详细说

JSP学习笔记(一):JSP标签

JSP的六大标签,分别是JSP命令标签.JSP申明标签.JSP script标签.JSP输出标签.JSP注释标签.JSP动作标签. 关于标签的具体用法,还是在实际运用中去体验比较可靠,用的过程中学习是一种很重要的方法.

(二十四)JSP标签之基本标签(&lt;jsp:标签名&gt;)

一.常用标签 1.1 jsp中标签一共有8中,其中常用的有6中,本文将介绍这6种常用的标签. 1.2 6种标签 1. <jsp:include> <jsp:include>标签表示包含一个静态的或者动态的文件. 语法: <jsp:include page="path" flush="true" /> or <jsp:include page="path" flush="true">