JSP——JavaBean应用
1、JavaBean概述:
什么是JavaBean?
- JavaBean是Java的可重用组件技术,实质是一种符合某些命名和设计规范的Java类。通过对属性和方法的封装,成为具有独立功能,可重复使用并且可以与其他控件通信的组件对象。
- JSP通过JavaBean执行负责计算任务、封装事务逻辑以及封装数据等等。
在JSP的Web应用中集成JavaBean组件,由JavaBean中处理业务逻辑,然后在JSP中调用,而JSP页面着重网页界面的设计,可以实现业务逻辑和前台显示的部分分离。
2、JavaBeans通常遵循的编写规范:
- JavaBean是一个public类。
- 一定使用了package语句进行打包。
- 有一个无参数的构造方法。//由于Java类中不写构造方法默认也是存在一个无参构造的,所以可以不用管这条。
- 属性一般是私有的,以保证数据的完整性和封装性。
- 对属性值的获取有相应的getXxx(),setXxx()方法,并且此方法是公有的,若要获取属性为boolean类型则可以使用isXxx()方法。
例:
package cn.javabean;
public class LoginBean {
private String name;
private String password;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
3、JSP中使用JavaBean的动作标签主要有三个:
标签 | 作用 |
---|---|
<jsp:useBean> | 在网页中创建一个Bean |
<jsp:setProperty> | 用于为Bean中的属性赋值 |
<jsp:getProperty> | 用于获取Bean中属性的值 |
1、useBean:
<jsp:useBean id="beanname" class="package.class" [scope="page|request|session|application"] />
- 功能:相当于创建了“package.class”类的一个对象,对象的名字是“beanname”。
- scope的值指定了该对象的作用范围,可取的值有4个:page、request、session、application。
2、setProperty:
<jsp:setProperty>
标签。表示为bean的属性赋值,有三种用法。
第一种用法:直接赋值
<jsp:setProperty name="beanName" property="propertyName" value="propertyValue" />
用来为bean的属性赋值。
其中name指出是在操作哪个bean(即useBean中的id的值),property指出对该bean的哪个属性赋值,value用来指定给属性赋的值。
第二种用法:传参
<jsp:setProperty name="beanName" property="propertyName" param="paramName" />
表示将一个传入参数的值赋给bean的某个属性。
注意:param表示传入参数的名字(即从表单提交的数据)。
第三种用法:
<jsp:setProperty name="beanName" property="propertyName" />
上述语句和如下语句完全等价:
<jsp:setProperty name="beanName" property="propertyName" param="propertyName" />
第四种用法:
<jsp:setProperty name="beanName" property="*" />
在这种用法中,JSP容器会一个个检查传入的参数,如果某个传入参数的名字和bean中某个属性的名字相同,则将该参数的值赋给bean中的属性。
优点:使用这种方式可以一次为多个属性赋值。
3、getProperty:
<jsp:getProperty>
标签:
<jsp:getProperty name="beanName" property="propertyName " />
用于获取bean中某个属性的值,并显示在当前页面。
name指出了要获取哪个bean的属性值,property指出要获取该bean的哪个属性值。
4、应用范围:
🆗,在JSP中调用JavaBean的知识点大致就这些。