一:javaBean是方便java实现web编程的一种组件,相当于将类中的属性设置为私有的方式;通过set和get方法来设置和获取属性的值,最主要的是要回使用当做元素设置和获取参数
要求 ;
Java代码
1,使用java类来封装,
2,使用set和get方法
1, 例子:使用javaBean的set和get方式;
Java代码
package bean;
public class User {
private int id;
private String userName;
private String userPwd;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getUserPwd() {
return userPwd;
}
public void setUserPwd(String userPwd) {
this.userPwd = userPwd;
}
}
2,在jsp页面中使用javaBean(重点)
声明和初始化一个Bean属性
Javabean代码
<jsp:useBean id="a" class="bean.User" scope="request"></jsp:useBean>
jsp:uesBean;标示标准动作
id="a";声明标示符a,设置属性的name与id的名字是一样的
class=" ";javaBean的set和get方法
scope;标示javaBean的作用域范围 默认本页 ,request session application
Javabean代码
<jsp:setProperty name="a" property="id" value="4"/>
setProperty ;设置属性的值
name;需要通过javaBean设置的name和标示动作中的id是一样的
property;需要修改方法名中含有id的
value;将其值设置为4
Javabean代码
<jsp:getProperty name="a" property="id"/>
getProperty;获取设置的属性
name;需要通过javaBean设置的name和标示动作中的id是一样的
property;获取标示为id中的方法
Javabean代码
${a.id}
向浏览器输出获取到的a.id的值
3,property中的id如何解析成java代码中的User类的getId()和setId()方法
1), javaBean会先将property的值首字母变成大写,
2),反射寻找类的方法
3),然后根据setProperty和getproperty来判断是set还是get方法,如果是setProperty就在id的就编程了setId ,如果是getProperty就在id的就编程了getId ,
4,javaBean的作用域和javaBean的forw转发
pageContext 本页
request 一次请求中
session 一次回话中
application 程序开始到结束
转发;
Javabean代码
<jsp:forward page="demo2.jsp">转发到demo2.jsp的页面
<jsp:param value="abcdef" name="aaa" />将name的值为abcdef也转发过去,相当于request.setAttribute("aaa", user);user的值为abcdef
</jsp:forward>
jsp脚本获取和动作元素获取例子;关键代码如下;
Jsp代码
User user = new User();
user.setId(100);
user.setUserName("王文");
user.setUserPwd("wangwen");
request.setAttribute("userA", user);
<jsp:forward page="demo2.jsp">
<jsp:param value=王文" name="aaa" />
</jsp:forward>
5,使用jsp脚本来获取值 在demo2.jsp中获取;
Jsp代码
先获得请求参数和参数值
<%
User user = (User) request.getAttribute("userA");
String value = request.getParameter("aaa");
%>
<%--使用脚本元素取值 --%>
姓名:<%=user.getUserName()%>
编号:<%=user.getId()%>
密码:<%=user.getUserPwd()%>
<%=value%>
姓名:王文 编号:100 密码:wangwen 王文
6,使用EL表达是来获取值
必须要先设置request.setAttribute("userA", user);否者获取不到
El输出代码
姓名:${userA.userName}
编号:${userA.id }
密码:${userA.userPwd}
${param}获取forwrad转发过来时传递的参数param
姓名:王文 编号:100 密码:wangwen {aaa=王文}
7,使用javaBean的动作元素来设置和获取值
Java代码
用户id设置和获取
lt;jsp:useBean id="a" class="cjl.bean.User" scope="request"></jsp:useBean>
<jsp:setProperty name="a" property="id" value="4"/>
<jsp:getProperty name="a" property="id"/>
姓名id设置和获取
<jsp:useBean id="b" class="cjl.bean.User" scope="request"></jsp:useBean>
<jsp:setProperty name="b" property="userName" value="王文"/>
<jsp:getProperty name="b" property="userName"/>
密码的设置和获取
<jsp:useBean id="c" class="cjl.bean.User" scope="request"></jsp:useBean>
<jsp:setProperty name="c" property="userPwd" value="wangwen"/>
<jsp:getProperty name="c" property="userPwd"/>
在任何页面都可以获取到;与会话相似
Javabean代码
javaBean用户id: ${a.id }
javaBean姓名:${b.userName }
javaBean姓名:${c.userPwd }
javaBean用户id:4
javaBean姓名:王文
javaBean姓名:wangwen
萌萌的IT人