版权声明:版权所有,如需引用,请注明出处! https://blog.csdn.net/DHRMM999/article/details/83929615
什么是JavaBean
javaBean是一种规范,也就是对类的要求,他要求类的成员变量提供getter/setter方法。这样的成员变量称为JavaBean属性。JavaBean还要求提供无参构造器。
/**
* 简单的JavaBean
* @author Mr DU
*
*/
public class AdminVo {
private String id;
private String name;
private String password;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
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;
}
public AdminVo(String id, String name, String password) {
super();
this.id = id;
this.name = name;
this.password = password;
}
}
JavaBean是具有setter/getter方法的成员变量。只提供getter叫只读,只提供setter叫做只写。
jsp与JavaBean相关的标签动作。
- <jsp:useBean>:创建JavaBean对象,以反射的机制实现
在当前页创建JavaBean对象,把创建的对象保存到域对象之中
<jsp:javaBean id="实例名" class="包.类名" scope="保存的四种范围">
默认保存到当前页page 可以设置为:page,request,session,application
javaBean不一定会创建对象,只有当对象不存在的时候才会创建!!
- <jsp:useProperty>:设置JavaBean的属性
- <jsp:getProprety>:获取JavaBean的属性
<jsp:useBean id="user" class="" scope="">
<jsp:setProperty property="username" name="user" value=“admin”/>设置JavaBean中username的值
</jsp:useBean>
<jsp:useBean id="user" class="" scope="">
<jsp:getProperty property="username" name="user"/>获取JavaBean中username的值
</jsp:useBean>
EL表达式语言
EL概述
EL的作用,在javaweb开发中,我们所有的html和java以及jsp页面是核心,但是在普通开发中,一个好的jsp页面要实现代码的整洁性,尽量避免在jsp页面中出现scriptlet(<%…%>)代码,所以,jsp推出了EL表达式,完成输出。
格式:${};
如果希望页面不适用EL,那么在page指令中加入isELlgnored=”true“属性。如果只希望某个不适应EL,则加上"",如${};
EL可以非常容易判断属性存不存在,scriptlet判断属性不存在时,会显示NULL,EL则显示空白。
EL表达式格式
- 操作list和数组:${list[0]},${arr[0]}
- 操作bean和属性:${person.name}—>对应的是person.getName()方法。
- 操作Map:${map.key},${map[‘key’]}—>对应的是map.get(Key);
EL一共11个内置对象,其中有十个是map类型的,最后一个是pageContext对象的
- pageScope
- requestScope
- sessionScope
- applicationScope
- param
- paramValues
- header
- headerValues
- initParam
- cookie
- pageContext
域对象一共有四个: - pageScope
- requestScpoe
- sessionScope
- applicationScope
${pageScope.name}=pageContext.getAttribute("name");
${requestScope.name}=request.getAttribute("name");
${sessionScope.name}=session.getAttribute("name");
${applicationScope.name}=application.getAttribute("name");
所有,如果域中保存的是JavaBean对象,则可以通过EL表达式获取。因此,JavaBean不一定有setter,但一定要有getter方法。
请求参数相关内置对象
param和paramValues这两个内置对象用来接收请求参数的。
param是获取一个请求参数,paramValue是获取一组请求参数(如复选框)。这是在jsp页面接收参数所用到的。相当于request.getParameter()和request.getParameterValues().