JavaBean

方便自己查询,嫌低级的勿喷。。。。

一.JavaBean导入有两种方式

1.在JSP中可以使用<%@ page%>指令导入指定的classpath里所需要的包和类

<%@ page contentType="text/html" pageEncoding="GBK"%>
<%@ page import="cn.mldn.lxh.demo.*"%> <!-- 导入cn.mldn.lxh.demo包-->
<html>
<head><title>方法一</title></head>
<body>
<%
    SimpleBean simple = new SimpleBean() ;//声明并实例化SimpleBean对象
    simple.setName("李兴华") ;//设置属性
    simple.setAge(30) ;
%>
<h3>姓名:<%=simple.getName()%></h3> <!-- 输出属性内容-->
<h3>年龄:<%=simple.getAge()%></h3>
</body>
</html>

2.使用<jsp:useBean>指令,格式如下
<jsp:useBean id="实例化对象名称" scope="保存范围" class="包、类名称"/>

id表示实例化对象的名称;scope表示此对象保存的范围,一共有page、request、session和application4种属性范围;class表示对象对应包、类名称

<%@ page contentType="text/html" pageEncoding="GBK"%>
<jsp:useBean id="simple" scope="page" class="cn.mldn.lxh.demo.SimpleBean"/> <!--实例化JavaBean对象-->
<html>
<head><title>方法二</title></head>
<body>
<%
    simple.setName("李兴华") ;
    simple.setAge(30) ;
%>
<h3>姓名:<%=simple.getName()%></h3>
<h3>年龄:<%=simple.getAge()%></h3>
</body>
</html>

二.设置属性

设置属性可以通过上面的方式设置,也可以通过<jsp:setProperty>来设置属性,对应有4种方式:

No 类型 语法格式
1 自动匹配 <jsp:setProperty name="实例化对象的名称(id)" property="*"/>
2 指定属性 <jsp:setProperty name="实例化对象的名称(id)" property="属性名称"/>
3 指定参数 <jsp:setProperty name="实例化对象的名称(id)" property="属性名称" param="参数名称"/>
4 指定内容 <jsp:setProperty name="实例化对象的名称(id)" property="属性名称" value="内容"/>

第一、二种,如果传递过来的参数名称和JavaBean中的属性名称一致话,将自动为这属性设置对应的参数值。

第三种,可以为JavaBean中某一属性指定对应的参数名称。

第四种,可以为JavaBean中某一属性指定特定的值。

以上的param指的是从其他页面传递过来的参数,可以通过request.getParameter()来获取值,然而这里jsp:setProperty自动获取。

<%@ page contentType="text/html" pageEncoding="GBK"%>
<html>
<head><title>www.mldnjava.cn,MLDN高端Java培训</title></head>
<body>
<%request.setCharacterEncoding("GBK") ;//解决提交乱码    %>
<jsp:useBean id="simple" scope="page" class="cn.mldn.lxh.demo.SimpleBean"/>
<jsp:setProperty name="simple" property="*"/>
<h3>姓名:<%=simple.getName() %></h3>
<h3>年龄:<%=simple.getAge() %></h3>
</body>
</html>

三.取得属性

可以通过<jsp:getProperty name="实例化对象的名称(id)" property="属性名称">来获取JavaBean对象的属性值。

<%@ page contentType="text/html" pageEncoding="GBK"%>
<html>
<head><title>www.mldnjava.cn,MLDN高端Java培训</title></head>
<body>
<%request.setCharacterEncoding("GBK") ;//解决提交乱码    %>
<jsp:useBean id="simple" scope="page" class="cn.mldn.lxh.demo.SimpleBean"/>
<jsp:setProperty name="simple" property="*"/>
<h3>姓名:<jsp:getProperty name="simple" property="name"/></h3>
<h3>年龄:<jsp:getProperty name="simple" property="age"/></h3>
</body>
</html>

四.JavaBean的保存范围

<jsp:useBean>指令上存在一个scope属性,表示一个JavaBean的保存范围,保存范围有以下4种:

①page:保存在一页的范围中,跳转后此JavaBean无效。

②request:一个JavaBean对象可以保存在一次服务器跳转的范围中,在一次服务器跳转中,将不会重复声明JavaBean对象。

③session:在一个用户的操作范围中保存,重新打开浏览器时才会声明新的JavaBean。

④application:在整个服务器上保存,所有用户都可以直接访问此对象,服务器关闭时才会消失。

五.JavaBean的删除

如果一个JavaBean不再使用的话,则可以直接使用4中属性范围内的removeAttribute()方法进行删除

①page:通过pageContext.removeAttribute(JavaBean名称)删除。

②request:通过request.removeAttribute(JavaBean名称)删除。

③session:通过session.removeAttribute(JavaBean名称)删除。

④application:通过application.removeAttribute(JavaBean名称)删除。

原文地址:https://www.cnblogs.com/mjsh/p/3204881.html