jsp标签jsp:setProperty用法
<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;
publicclass SampleBean2
{
private String
id;
private String
age;
private String
name;
private String
sex;
private String
addr;
public SampleBean2()
{
}
public String getName()
{
returnname;
}
publicvoid setName(String name)
{
this.name = name;
}
public String getSex()
{
returnsex;
}
publicvoid setSex(String sex)
{
this.sex = sex;
}
publicvoid setId(String id)
{
this.id = id;
}
publicvoid setAge(String age)
{
this.age = age;
}
public String getId()
{
returnid;
}
public String getAge()
{
returnage;
}
public String getAddr()
{
returnaddr;
}
publicvoid 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动态网页制作基础培训教程-源代码>>
http://hi.baidu.com/ffcheng1987/blog/item/44c71755925761c7b645ae2c.html
jsp标签jsp:setProperty用法的更多相关文章
- JavaWeb之 JSP:内置对象,EL表达式,JSP标签基础
JSP的内置对象 什么是JSP的内置对象呢? 在JSP页面进行编程的时候,如果我们要使用一些对象,如:HttpSession,ServletConfig,ServletContext这些对象,如果每次 ...
- JSP内置标签 JSP中JavaBean标签 JSP开发模式 EL和JSTL快速入门
2 JSP内置标签(美化+业务逻辑) 1)为了取代<%%>脚本形式,使用JSP标签/JSP动作,目的:与JSP页面的美化,即JSP面页都是由标签组成,不再有其它的内容 2)JSP内 ...
- javaWeb学习总结(8)- JSP标签(6)
一.JSP标签介绍 JSP标签也称之为Jsp Action(JSP动作)元素,它用于在Jsp页面中提供业务逻辑功能,避免在JSP页面中直接编写java代码,造成jsp页面难以维护. 二.JSP常用标签 ...
- JSP学习(五)JSP标签
JSP标签 jsp的常用标签有: <jsp:include>标签 <jsp:forward>标签 <jsp:param>标签 <jsp:include> ...
- 自定义的JSP标签
JSP标签 JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能. JSTL支持通用的.结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签. 除了这 ...
- JSP标签的用法
JSP动作标签: 通过动作标签,程序员可以在JSP页面中把页面的显示功能部分 封装起来,是整个页面更简洁和易于维护 <jsp:useBean> 装载一个将在JSP页面中使用的JavaBea ...
- jsp学习(2)jsp标签
1.脚本程序 脚本程序可以包含任意量的Java语句.变量.方法或表达式,只要它们在脚本语言中是有效的. 脚本程序的语法格式:<%代码片段%>您也可以编写与其等价的XML语句,就像下面这样: ...
- jsp学习--JSP运行原理,九大隐式对象和JSP常用标签
一.JSP运行原理 每个JSP 页面在第一次被访问时,WEB容器都会把请求交给JSP引擎(即一个Java程序)去处理.JSP引擎先将JSP翻译成一个_jspServlet(实质上也是一个servlet ...
- JSP:useBean,setProperty的使用
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ...
随机推荐
- Xcode一种涉及到多桌面的调试技巧
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) Mac本身是支持多桌面功能的,以下是本猫OS界面的截图: 可以 ...
- 从操作系统内核看Java非阻塞IO事件检测
非阻塞服务器模型最重要的一个特点是,在调用读取或写入接口后立即返回,而不会进入阻塞状态.在探讨单线程非阻塞IO模型前必须要先了解非阻塞情况下Socket事件的检测机制,因为对于非阻塞模式最重要的事情是 ...
- 11 OptionsMenu 菜单
OptionsMenu 选项菜单(系统菜单 ) OptionsMenu:系统级别菜单 菜单的使用步骤: 1. res里的menu里添加布局 在布局里写菜单项 2. 在逻辑代码中使用OnCreateOp ...
- Cocos2D中Node的userObject实例变量使用时一个要注意的地方
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 我们知道在Cocos2D中,CCNode对象有一个ivar为us ...
- Android最佳实践之SystemBar状态栏全版本适配方案
前言 自从MD设计规范出来后,关于系统状态栏的适配越受到关注,因为MD在5.0以后把系统状态栏的颜色改为可由开发者配置的,而在5.0之前则无法指定状态栏的颜色,所以这篇就说说使用Toolbar对系统状 ...
- Android开发模式之MVC,MVP和MVVM的简单介绍与区别
相信大家对MVC,MVP和MVVM都不陌生,作为三个最耳熟能详的Android框架,它们的应用可以是非常广泛的,但是对于一些新手来说,可能对于区分它们三个都有困难,更别说在实际的项目中应用了,有些时候 ...
- Android学习之Animation(一)
3.0以前,android支持两种动画模式,Tween Animation,Frame Animation,在android3.0中又引入了一个新的动画系统:Property Animation,这三 ...
- 关于Class文件
什么是Class文件 Java人对class文件肯定很熟悉了,它是Java源码编译后的产物.JVM运行时负责加载class文件,并根据class定义的执行逻辑运行.java为了将硬件底层的差异屏蔽掉, ...
- UIPassValue页面传值 UI_08(下)
2.从前一个界面到后一个界面 注意:解题思路 葵花宝典:属性传值 第一步:在下一个界面视图控制器的.h文件中定义一个属性 第二步:在push之前将数据存储到属性中 第三步:取出属性中的值让控件 ...
- C++ Primer 有感(异常处理)(三)
先看下面的代码: [cpp] view plaincopy int main() { int *i=new int(10); /* 这中间的代码出现异常 */ delete i; return 0; ...