<JSP:SetProperty/>:
此标记用于将值设置为相对于<JSP:USEBean 标记创建的JavaBeans类对象。
语法-1:
<JSP:setProperty name="object name of a JavaBeans class" Property="property name of JavaBeans class" Value="value for property"
例如:
<JSP:useBean id="eo" class="ep.Emp"> <JSP:setProperty name="eo" Property="empno" Value="123" </JSP:useBean>
当容器执行上述语句时,将进行以下语句。
ep.Emp eo=new ep.Emp (); eo.setEmpno ("123");
以上语法用于通过静态传递特定值来调用特定的SET方法。
语法-2:
<JSP:setProperty name="object name of a JavaBeans class" property="*"
上面的语法用于通过动态传递值来调用所有通用设置方法。
例如:
<JSP:useBean id="eo" class="ep.Emp"> <JSP:setProperty name="eo" property="*" </JSP:useBean>
动态地,我们可以通过HTML程序将值传递给JSP页面。
HTML程序的所有表单字段必须与JavaBeans类的数据成员或者属性类似,并且我们必须定义一组设置方法的顺序。
bean.jsp:
<html> <body> <jsp:useBean id="obj" class="tp.TechBean"> <jsp:setProperty name="obj" property="*" </jsp:useBean> <h3>Result of bean action tags</h3> Hello <jsp:getProperty name="obj" property="b1_name"<p> <jsp:getProperty name="obj" property="b1_lang"<p> <jsp:getProperty name="obj" property="langComments"<p> <h3>Result of expression tags</h3> Name : <%= obj.getName()%><br> Language : <%= obj.getLang()%><br> Comment : <%= obj.getLangComments%> </body> </html>
checkbean.jsp:
<%@ page import="mypack.CheckBean" %> <jsp:useBean id="check" class="CheckBean" scope="session"> <jsp:setProperty name="check" property="*" </jsp:useBean> <%= check.validate()%>
bean.html:
<html> <body> <h3>Bean tag test</h3> <form name="b1" action="bean.jsp" method="post"> Enter ur name : <input type="text" name="b1_name"><p> Select the language : <select name="b1_lang"> <option value=""></option> <option value="c"> C </option> <option value="c++"> C++ </option> <option value="java"> Java </option> <option value=".net"> .NET </option> </select><p> <input type="submit" value="Send"> <input type="reset" value="Clear"> </form> </body> </html>
使用JavaBean类进入JSP页面,使用以下标记使用JavaBean类作为JSP的一部分:
TechBean.java:
package tp; public class TechBean { String name; String lang; public TechBean() //recommended to write { } public void setName(String name) { this.name = name; } public void setLang(String lang) { this.lang = lang; } public String getName() { return name; } public String getLang() { return lang; } public String getLangComments() { if (lang.equals("c")) { return ("Mahesh is the best faculty"); } else if (lang.equals("c++")) { return ("Kalyan is the best institute for it"); } else if (lang.equals("java")) { return ("Suresh is the best faculty "); } else if (lang.equals(".net")) { return ("Dinesh is the best faculty "); } else { return ("No idea..!"); } } };
例如(bean2):
<JSP:useBean/>:
此标记用于创建JavaBeans类的对象作为JSP页面的一部分。
语法:
<JSP:useBean id="object name of a JavaBeans class" class="fully qualified name of JavaBeans class" scope="scope attribute" type="name of base interface or class"
- 其中JSP表示使用的前缀或者短名称标记。
- UseBean表示表示JavaBeans类的详细信息的标签。
- ID和名称是UseBean标记的必需属性。
- ID表示JavaBeans类的对象名称。
- 名称代表了javabeans类的完全限定名称。
- 范围表示JavaBeans类的可见性或者可访问性。
scope属性表示以下任一项:
- 页面 - 表示javabeans类对象只能在当前的JSP页面中访问。它无法在另一个JSP页面中访问。默认情况下,范围是页面。
- 请求 - 表示javabeans类对象,可以在参与处理单个请求的JSP页面中访问。
- 会话 - 表示javabeans类对象可以在参与会话的所有JSP页面中访问,并且无法访问不参与会话的JSP页面中。
- 应用程序 - 表示javabeans类对象可以在属于同一Web应用程序的所有JSP页面中访问,但无法访问属于其他Web应用程序的JSP页面。
type属性表示JavaBeans类的基础接口或者类名的规范。
例如:
<JSP:useBean id="eo" class="ep.Emp" scope="session" type="ep.GenEmp"
当执行上述语句时,容器创建一个对象EO以下列方式创建:
ep.GenEmp eo=new ep.Emp ();
如果我们未指定类型属性的值,则以以下方式创建对象EO:
ep.Emp eo=new ep.Emp ();
注意:在上面<JSP:USEBean 标记中,如果我们使用称为<JSP:setProperty 的标记,那么该标签变为<JSP:USEBean 标记的身体标记。
checkbean.java:
package mypack; public class CheckBean { String uname; String pwd; public CheckBean() { } public void setUname(String uname) { this.uname = uname; } public void setPwd(String pwd) { this.pwd = pwd; } public String getUname() { return uname; } public String getPwd() { return pwd; } public boolean validate() { if (uname.equals("asha") && pwd.equals("krishna")) { return (true); } else { return (false); } } };
<JSP:GetProperty/> :
此标记用于检索JavaBeans类对象的值。
语法:
<JSP:getProperty name="object name of JavaBeans class" property="property name of JavaBeans class"
例如:
<JSP:getProperty name="eo" property="empno"
[或者]
<%= eo.getEmpno()%>
示例:
web.xml:
<web-app> </web-app>
web.xml:
<web-app> </web-app>
checkbean.html:
<html> <body> <form name="checkbean" action="CheckBean.jsp" method="post"> Enter user name : <input type="text" name="checkbean_name" value=""><br> Enter password : <input type="password" name="checkbean_pwd" value=""><br> <input type="submit" value="Send"> <input type="reset" value="Clear"> </form> </body> </html>
日期:2020-04-11 23:04:39 来源:oir作者:oir