JavaBean出现的目的

一、JavaBean出现的目的

由于只用JSP开发会发现使用了很多的Scriptlet,会使得jsp文件非常混乱。如果使用了JavaBean,则可以大大减少JSP中代码量。

JSP的理想状态是只负责显示,而不负责处理。

二、JavaBean介绍

JavaBean说的通俗点就是一个Java类用于JSP中。通过<jsp:useBean>或者import导入。

JavaBean导入的类的约定:

(1)类必须是public的;

(2)必须有无参构造;

(3)属性必须是private的;

三、JavaBean存放位置

在tomcat中的理想目录结构如下:

JavaBean存放在WEB-INF/classes内。

注意:

(1)每次修改classes文件或web.xml后必须要重启服务器。

如果觉得很麻烦,则在开发过程中可以通过在Server.xml中设置虚拟目录的位置添加:

<Context path="..." docBase="..." reloadable="true"/>,这样就会变成自动导入模式,不必重启服务器。

但是有一个缺点,就是服务器必须时刻监视,会降低性能。

(2)在classes中放入的是class文件。

(3)类必须要有所在的包。

四、<jsp:useBean>用法:

一般的形式:<jsp:useBean id="实例化名称" scope="page" class="完整类名称"/>

id中是实例化对象;

scope中可以是

(1)page:在一页中保存

(2)request:服务器端跳转仍保存;

(3)session:跳转仍保存;

(4)application:服务器没有关闭仍保存;

class为实例化对象的类的完整名称;

使用<jsp:useBean>的好处是自动帮助你创建一个名为id的值的对象。

注意:JavaBean中一定要有无参构造函数。

五、<jsp:setProperty>用法:

一般形式有四种:

(1)<jsp:setProperty name="实例化名称" property="*"/>:自动调用set方法;

(2)<jsp:setProperty name="实例化名称" property="name1"/>:对于name1属性自动调用set方法;

(3)<jsp:setProperty name="实例化名称" property="name1" value="value1"/>:对于name1属性赋予value1值;

(4)<jsp:setProperty name="实例化名称" property="name1" param="param1"/>:把param1的值赋给name1属性;

但是一般使用第一种方法最多。

六、<jsp:getProperty>用法

一般形式:<jsp:getProperty name="c1" propety="name1"/>自动调用c1对象的getName1()方法,并返回;

其实效果和getter方法是一样的;

七、JavaBean删除

通过pageConext.removeAttribute("JavaBean名称");删除scope为page的JavaBean对象。依次类推。

原文地址:https://www.cnblogs.com/w-wfy/p/5498186.html