jsp:useBean标签和jsp:setProperty标签 笔记

2024-04-24 08:48

本文主要是介绍jsp:useBean标签和jsp:setProperty标签 笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

<jsp:useBean>标签用来在JSP页面中创建一个Bean实例。并指定它的名字及作用范围。它保证对象在标签指定的范围内可以使用。

语法如下:

<jsp:useBean id="id"scope="page|request|session|application" typeSpec/>

id为大小敏感的名字,用来表示这个实例;

scope表示此对象可以使用的范围;

typeSpec可以为以下四者之一:

·   class="className" Bean的类路径和类名。这个class不能是抽象的,必须有一个共用的,没有参数的构造器。

·   class="className" type="typeName"实例化一个Bean,同时还可以指定Bean的类型。

·   beanName="beanName" type="typeName"

·   type="typeName"

例:

Bean,定义Bean,定义了userName,password,age三个变量及三个变量的get/set方法。

package com.jspdev.ch3;public class TestBean{public String userName;public String password;public int age;public void setUserName(String name){this.userName=name;}public void setPassword(String password){this.password=password;}public String getUserName(){return this.userName;}public String getPassword(){return password;}public int getAge(){return this.age;}public void setAge(int age){this.age=age;}}

表单,定义了表单中的参数,注意参数名和Bean中定义的变量需要一致(包括大小写)。

<html><body>用户信息注册:<br><hr><form method="get"action="register.jsp"><table><tr><td>姓名:<inputname="userName"type="text"></td></tr><tr><td>密码:<inputname="password"type="password"></td></tr><tr><td>年龄:<inputname="age"type="text"></td></tr><tr><td><inputtype=submitvalue="submit"></td></tr></table></form></body></html>

JSP,<jsp:useBean>标签指了在本页面中使用JavaBean,此JavaBean的类为com.jspdev.ch3.TestBean,ID为"user"。

使用方法<jsp:setProperty>将request中的参数与JavaBean中的参数对应起来。name为之前用jsp:useBean引入的名称即,"user"。

使用user.getUserName()方法来获得用户名信息,这的"user"实际上指向一个JavaBean对象。也可以使用

<jsp:getPropertyname="user" property="userName"/>来获得JavaBean的属性。

<%@ pagecontentType="text/html;charset=gb2312"%><jsp:useBean id="user"scope="page"class="com.jspdev.ch3.TestBean"/><jsp:setPropertyname="user" property="*"/><html><body>注册成功:<br><hr>使用bean属性方法:<br>用户名:<%=user.getUserName()%><br>密码:<%=user.getPassword()%><br>年龄:<%=user.getAge()%><br><hr>使用getProperty:<br>用户名:<jsp:getProperty name="user"property="userName"/><br>密码:<jsp:getProperty name="user"property="password"/><br>年龄:<jsp:getProperty name="user"property="age"/><br></body></html>


<jsp:setProperty>标签,用来和useBean一起协作,用来设置Bean的简单属性和索引属性。

语法如下:

<jsp:setPropertyname="beanName" propertyDetails />

name="beanName"为必选属性其值为Bean的名字在这之前用jsp:userBean引入的名称。

proertyDetails可以有四种不同的方法。

·   property="*"设置Bean快捷方式Bean属性的名字、类型必须和request对象中的参数名称相匹配。

·   property="propertyName"param="parameterName" Bean中的变量和request中的参数对应起来。propertyBean的属性名,paramrequest中的参数名。

·   property="propertyName"      

·   property="propertyName" value="propertyValue"  直接设置Bean的值。

 

举例说明,当使用property="*"时,可以如下操作:

<html><body>用户信息注册:<br><hr><form method="get"action="register.jsp"><table><tr><td>姓名:<inputname="userName"type="text"></td></tr><tr><td>密码:<inputname="password"type="password"></td></tr><tr><td>年龄:<inputname="age"type="text"></td></tr><tr><td><inputtype=submitvalue="submit"></td></tr></table></form></body></html>


对以上HTML语言Bean已经写好前提下可以使用如下的代码

<jsp:useBean id="user"scope="page"class="com.jspdev.ch3.TestBean"/><jsp:setPropertyname="user" property="*"/><html><body>注册成功:<br><hr>使用bean属性方法:<br>用户名:<%=user.getUserName()%><br>密码:<%=user.getPassword()%><br>年龄:<%=user.getAge()%><br><hr>使用getProperty:<br>用户名:<jsp:getProperty name="user"property="userName"/><br>密码:<jsp:getProperty name="user"property="password"/><br>年龄:<jsp:getProperty name="user"property="age"/><br>


*<jsp:getProperty>标签,用来访问Bean的属性。<jsp:getPropertyname="user"property="userName"/>中,name="user",是使用<jsp:useBean>所获取的Bean;property="userName",是Bean中的变量名,也可以理解为是HTML中的<inputname="password" type="password">


原文来自:http://blog.sina.com.cn/s/blog_66c2c28e01017113.html

这篇关于jsp:useBean标签和jsp:setProperty标签 笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/931291

相关文章

SpringBoot如何访问jsp页面

《SpringBoot如何访问jsp页面》本文介绍了如何在SpringBoot项目中进行Web开发,包括创建项目、配置文件、添加依赖、控制层修改、测试效果以及在IDEA中进行配置的详细步骤... 目录SpringBoot如何访问JSP页python面简介实现步骤1. 首先创建的项目一定要是web项目2. 在

python解析HTML并提取span标签中的文本

《python解析HTML并提取span标签中的文本》在网页开发和数据抓取过程中,我们经常需要从HTML页面中提取信息,尤其是span元素中的文本,span标签是一个行内元素,通常用于包装一小段文本或... 目录一、安装相关依赖二、html 页面结构三、使用 BeautifulSoup javascript

【Prometheus】PromQL向量匹配实现不同标签的向量数据进行运算

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

EMLOG程序单页友链和标签增加美化

单页友联效果图: 标签页面效果图: 源码介绍 EMLOG单页友情链接和TAG标签,友链单页文件代码main{width: 58%;是设置宽度 自己把设置成与您的网站宽度一样,如果自适应就填写100%,TAG文件不用修改 安装方法:把Links.php和tag.php上传到网站根目录即可,访问 域名/Links.php、域名/tag.php 所有模板适用,代码就不粘贴出来,已经打

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear

数学建模笔记—— 非线性规划

数学建模笔记—— 非线性规划 非线性规划1. 模型原理1.1 非线性规划的标准型1.2 非线性规划求解的Matlab函数 2. 典型例题3. matlab代码求解3.1 例1 一个简单示例3.2 例2 选址问题1. 第一问 线性规划2. 第二问 非线性规划 非线性规划 非线性规划是一种求解目标函数或约束条件中有一个或几个非线性函数的最优化问题的方法。运筹学的一个重要分支。2

【C++学习笔记 20】C++中的智能指针

智能指针的功能 在上一篇笔记提到了在栈和堆上创建变量的区别,使用new关键字创建变量时,需要搭配delete关键字销毁变量。而智能指针的作用就是调用new分配内存时,不必自己去调用delete,甚至不用调用new。 智能指针实际上就是对原始指针的包装。 unique_ptr 最简单的智能指针,是一种作用域指针,意思是当指针超出该作用域时,会自动调用delete。它名为unique的原因是这个

查看提交历史 —— Git 学习笔记 11

查看提交历史 查看提交历史 不带任何选项的git log-p选项--stat 选项--pretty=oneline选项--pretty=format选项git log常用选项列表参考资料 在提交了若干更新,又或者克隆了某个项目之后,你也许想回顾下提交历史。 完成这个任务最简单而又有效的 工具是 git log 命令。 接下来的例子会用一个用于演示的 simplegit