在一个JSP页面中,有这样的代码:
<jsp:useBean id="checklog" class="com.google.admin.guard.CheckLogBean" scope="session" />
然后
<% checklog.checkit(); %>
为什么我们不直接使用 new com.google.admin.guard.CheckLogBean
创建对象?
这样做有什么好处?
并且在源代码中,没有这样的类,但是当我们将其部署到服务器时,它就可以工作。看来服务器可以把类传给它?
谢谢。
最佳答案
Jsp bean 类 (.class) 必须放在 WEB-INF/classes
文件夹下,或者如果它们打包成 .jar,请将 .jar
文件放入 WEB-INF/lib
。 jsp:useBean
是一个以声明方式实例化具有不同范围( session 、请求、应用程序和页面)的 bean 的操作。 Bean 的另一个特性是内省(introspection)的魔力 - Java 通过一个称为内省(introspection)的过程来管理这个小奇迹,该过程允许类根据请求公开其方法和功能。
JavaBeans Components in JSP Pages
SUMMARY: JavaBeans components are Java classes that can be easily reused and composed together into applications. Any Java class that follows certain design conventions can be a JavaBeans component.
关于java - 为什么使用jsp :useBean here but not just create a new object?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1387219/