JSP学习笔记(2)_JavaBeans

(三)JavaBeans
1.JavaBean简介及设计原则
Javabeans就是符合某种特定的规范的java类。使用Javabeans的好处就是解决代码重复编写,减少代码冗余,功能分区明确,提高了代码的维护性。
设计原则:(是个java类)
公有类
无参的公有构造方法
getter和setter方法
属性私有


2.jsp动作元素
动作元素为请求处理阶段提供信息。动作元素遵循XML元素的语法,有一个包含元素名的开始标签,可以有属性、可选的内容、结束标签。
五类:
(1)与存取Javabean有关的,包括:
<jsp:useBean><jsp:setProperty><jsp:getProperty>


(2)jsp1.2就开始有的基本元素,包括6个动作元素
<jsp:include><jsp:forward><jsp:param><jsp:plugin><jsp:params><jsp:fallback>
(3)jsp2.0新增加的元素,主要与JSP Document有关,包括6个元素
<jsp:root><jsp:declaration><jsp:scriptlet><jsp:expression><jsp:text><jsp:output>
(4)JSP2.0新增的动作元素,主要用来生产xml元素标签的值,包括3个动作
<jsp:attribute><jsp:body><jsp:element>
(5)JSP2.0新增的动作元素,主要用在Tag File中,有2个元素
<jsp:invoke><jsp:dobody>




3.使用普通方式创建JavaBean
使用Javabeans方法:
(1)就像使用普通java类一样,创建javabean实例
例:
建立一个用户类的javabean


public class Users {
private String name;
private String password;
public Users() {
// TODO Auto-generated constructor stub
}
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;
}

}
//右键source--generate getters and setters,可自动生成getset方法


如何使用:
<%@ page import="po.Users" %>//po包名
<%
Users user = new Users();
user.setName("zzz");
user.setPassword("123");
%>
用户名:<%=user.getName() %>
密码:<%=user.getPassword() %>


(2)在JSP页面中通常使用jsp动作标签使用javabean
useBeans动作
setProperty动作
getProperty动作


<jsp:useBeans>
作用:在jsp页面中实例化或者在指定范围内使用javabean
<jsp:useBean id = "标识符" class = "java类名(包+类)" scope = "作用范围" />


例:(注意不是在jsp脚本中)
<jsp:useBean id="myUsers" class="po.Users" />
用户名:<%=myUsers.getName() %>
密码:<%=myUsers.getPassword() %>




<jsp:setProperty>
作用:给已经实例化的javabean对象的属性赋值,一共有四种形式。
<jsp:setProperty name = "JavaBean实例名(myUsers)" property = "*"/>(跟表单关联)
(创建一个表单并提交给某一jsp页面,该页面使用该形式进行赋值,根据表单自动匹配所有属性,并自动调用javabean中的set方法进行赋值)
<jsp:setProperty name = "JavaBean实例名" property = "JavaBean属性名"/>(跟表单关联)
<jsp:setProperty name = "JavaBean实例名" property = "JavaBean属性名" value = "BeanValue" />(手工设置)
<jsp:setProperty name = "JavaBean实例名" property = "propertyName" param = "request对象中的参数名" />(跟request参数关联)
(跟request提交的参数有关,parameter通过url地址栏传参)
例:
通过url传参数给属性值赋值
<form name="loginForm" action="dologin.jsp ? mypass=99999" method="post">
...
<jsp:setProperty name="myUsers" property="password" param="mypass" />
...
</form>


<jsp:getProperty>
作用:获取指定Javabean对象的属性值
<jsp:getProperty name="Javabean实例名" property="属性名" />




4.Javabean的四个作用域范围(注视频)
说明:使用useBeans的scope属性可以用来之指定javabean的作用范围。
page:仅在当前页面有效
request:可以通过HttpRequest.getAttribute()方法获得JavaBean对象。(请求的范围)
session:可以通过HttpSession.getAttribute()方法获得JavaBean对象。(会话的范围)
application:可以通过application.getAttribute()方法取得JavaBean对象。(全局的范围)


5.Model1















猜你喜欢

转载自blog.csdn.net/qq_35634418/article/details/80997666