概述

实际上就是一个被编译过后的类,被服务器拿去当作现成的类使用,可以被看做是正常的类来使用

使用

编写与导入Java Bean

需要在IDEA中的项目结构里面,将类的输出目录变更为 ~/WEB-INF/classes/bean/包名,注意必须在bean下面添加包,然后将输出文件放在包中,不然Java Bean 无法被找到,同时需要注意的是,Java Bean必须在编译一次之后才会出现.

创建JavaBean对象

<jsp:useBean id="对象名" class="包名" scope="有效范围">
相当于一个new()语句,来创建一个class类下的对象实例
随后就可以直接在<%.....%>中像普通对象一样被使用

JavaBean的有效范围

如下:

page范围:与当前页面相对应,JavaBean的生命周期存在于一个页面之中,当页面关闭时JavaBean被销毁。

request范围:与JSP的request生命周期相对应,JavaBean的生命周期存在于request对象之中,当request对象销毁时JavaBean也被销毁。

session范围:与JSP的session生命周期相对应,JavaBean的生命周期存在于session会话之中,当session超时或会话结束时JavaBean被销毁。

application范围:与JSP的application生命周期相对应,在各个用户与服务器之间共享,只有当服务器关闭时JavaBean才被销毁。

————————————————

版权声明:本文为CSDN博主「DaleyDC」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/sinat_32873711/article/details/53148611

常见问题

javaBean无法生成/调用

检查项目结构中的类输出列表
检查JavaBean是否被额外的软件包给包裹
检查jar包是否冲突,已知:Jakarta与javax包冲突

对象初始化之后找不到

一般过程:
建立一个对象声明->从Session中获取一个对象->如果发现获取的是null,则申请一个新的
不要忘记,在申请完之后,将对象添加到session中.

  1. if(null==foodPrice||0==foodPrice.length()||null==foodName||0==foodName.length()){
  2. response.sendRedirect(HOME_JSP);
  3. menuBean.setOk(false);
  4. return;
  5. }