概述
实际上就是一个被编译过后的类,被服务器拿去当作现成的类使用,可以被看做是正常的类来使用
使用
编写与导入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中.
if(null==foodPrice||0==foodPrice.length()||null==foodName||0==foodName.length()){
response.sendRedirect(HOME_JSP);
menuBean.setOk(false);
return;
}