一、JavaBean出现的目的
由于只用JSP开发会发现使用了很多的Scriptlet(java脚本),会使得jsp文件非常混乱。如果使用JavaBean,则可以大大减少JSP中代码量。JSP的理想状态是只负责显示,而不负责处理。
二、JavaBean介绍
JavaBean说的通俗点就是一个Java类用于JSP中。通过<jsp:useBean>或者import导入。
JavaBean导入的类的约定:
(1)类必须是public的;
(2)必须有无参构造;
(3)属性必须是private的;
(4)必须有get和set方法,类的字段必须通过get和set方法来访问。
三、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对象。依次类推。
八、有了JavaBean以后,我们怎么在JSP页面中访问它呢?
方法有2种: 直接访问和JSP标签访问 (不过我们推荐通过标签来访问)
1)直接访问
a) 声明bean
在页面顶部导入JavaBean类: <%@ page import="mytrain.formbean.userBean" %>
在JSP段实例化类: <% userBean user = new userBean(); %>
b) 访问bean
<% user.setXXX(aa); %>
<%=user.getXXX();%>
2)标签访问(推荐)
a) 声明bean
使用userBean标签:
<jsp:useBean id="user" class="mytrain.formbean.userBean"/>
b) 访问bean
通过setProperty标签来设置:<jsp:setProperty name="user" property="name" param="mUserName"/>
通过getProperty标签来取得:<jsp:getProperty name="user" property="name"/>
下面我们来看一下完整的代码。
package mytrain.formbean; public class UserBean { private String name; private String password; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
login.html:
<%@ page language="java" pageEncoding="GBK"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>表单Bean例子2</title> </head> <body> <form action="register.jsp" method="post"> 用户名: <input type="text" name="mUserName" size="20"> <br> 密码: <input type="password" name="mPassword" size="20"> <br> <input type=submit value="submit" /> </form> </body> </html>
标签访问法:register.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> </head> <body> <jsp:useBean id="user" class="mytrain.formbean.UserBean" /> <jsp:setProperty name="user" property="name" param="mUserName" /> <jsp:setProperty name="user" property="password" param="mPassword" /> <hr /> 用户名:<jsp:getProperty name="user" property="name" /> <br> 密 码:<jsp:getProperty name="user" property="password" /> </body> </html>
标签访问法:register.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@page import="mytrain.formbean.UserBean" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> </head> <body> <% UserBean user = new UserBean(); user.setName(request.getParameter("mUserName")); user.setPassword(request.getParameter("mPassword")); %> <hr /> 用户名:<%=user.getName()%> <br> 密 码:<%=user.getPassword()%> </body> </html>
相关推荐
JavaBean是一种特殊的Java类,它是Java编程语言中的一个核心概念,尤其在开发企业级应用程序时极为常见。JavaBean遵循特定的规范,使它们能够被其他Java应用或开发工具(如IDEs)识别、可视化和操作。JavaBean的主要...
JavaBean是Java编程中的一种重要概念,主要用于封装数据和业务逻辑,它遵循一定的规范,使得Java对象能够被方便地在Web应用中使用,特别是在Servlet和JSP之间传递数据。在这个项目"JavaBean_Javabean增删改查_...
"JavaBean技术应用实现购物车" JavaBean是一种特殊的Java类,它遵循JavaBean的命名约定和设计模式,主要用于封装和 Exposure 数据。JavaBean技术广泛应用于Web应用开发,特别是在购物车系统中,JavaBean技术可以...
简单身份验证 JAVABEAN 的设计 JavaBean 是 Java 语言中的一种组件模型,用于封装业务逻辑、数据和表现层逻辑。 JavaBean 可以在支持 Java 的任何平台下工作,而不需要重新编译。传统意义上的 JavaBean 支持的组件...
JavaBean是一种在Java编程语言中编写可重用组件的标准。它是Java类库的一部分,主要用于封装数据和业务逻辑,便于在Web应用、企业级应用或任何Java应用中进行数据表示和交换。JavaBean遵循一定的规范,使得它们易于...
在标签中,“jsp”指明了应用场景,“MD5”和“javaBean”是主要技术点,而“例子”意味着这个JavaBean是一个具体的实现,可以直接在项目中引用或作为学习的示例。 至于压缩包内的文件“md5”,很可能就是包含这个...
在实际开发中,我们经常会遇到需要自定义数据源的情况,这时JasperReport提供了使用JavaBean作为数据源的功能。本实例将详细介绍如何通过自定义JavaBean数据源来生成报表。 首先,理解JavaBean是一种符合特定规范的...
JavaBean和XML之间的转换在软件开发中扮演着重要的角色,特别是在数据交换和接口通信中。当我们需要在不同的系统之间传递信息时,XML由于其结构化和可读性,经常被用作数据传输的标准格式。然而,JavaBean是Java中...
《JavaBean及Servlet使用》实验详解 实验四的目的是让学生深入理解JavaBean和Servlet的开发流程,这二者是Java Web开发中的重要组成部分。JavaBean是一种符合特定规范的Java类,通常用于封装业务逻辑和数据,而...
**JSP(JavaServer Pages)与JavaBean是Java Web开发中的重要组成部分,它们共同构建了动态网页应用的基础架构。在“JSP&javaBean写的简单用户验证”这个示例中,我们将探讨如何利用这两者实现用户登录验证的功能。*...
【标题】"jsp+javabean 学生管理系统 sql数据库"是一个典型的Web应用程序开发实例,主要涉及了Java服务器页面(JSP)、JavaBean以及SQL数据库技术。这个管理系统旨在实现对学生信息的有效管理和查询。 **JSP(Java...
JavaBean技术是Java Web开发中的一个重要组成部分,它主要用于封装数据和业务逻辑,使得代码更加模块化,便于重用和管理。在"WEB应用技术 JavaBean技术应用"的实验中,我们学习了如何利用JavaBean来处理用户登录的...
"SqlToJavaBean_javabean_根据表结构生成javabean_生成javabean_"这个标题暗示了一个工具或库,它能够自动化地根据数据库中的表结构生成对应的JavaBean类,从而减少开发者的手动编码工作。 描述中提到"根据数据表...
JavaBean是Java编程语言中的一种特定类,遵循特定的规范,用于封装数据并提供属性访问。这个"JavaBean示例"旨在帮助初学者理解和使用JavaBean。JavaBean主要用于构建Java应用程序的可重用组件,特别是在JavaServer ...
《基于JavaBean的学生信息管理系统详解》 学生信息管理系统是一个典型的数据库操作应用,它主要用于高校或教育机构对学生的个人信息进行管理。在这个系统中,我们利用JavaBean技术实现了对学生数据的增、删、改、查...
JavaBean 实现用户登录界面 JavaBean 是一种轻量级的 Java 类,遵循 JavaBeans 规范,用于封装数据和业务逻辑。 JavaBean 可以实现用户登录验证,以下是 JavaBean 实现用户登录界面的知识点: 1. JavaBean 的定义...
本文将深入探讨一个基于JSP、JavaBean和Servlet技术构建的网上书店应用程序。这个系统充分利用了这些技术的优势,为用户提供了一种便捷的在线购书体验,包括浏览书籍、添加到购物车、修改和删除订单,以及用户管理等...
在本实验中,我们将深入学习如何使用JavaBean技术来实现一个简单的购物车功能。JavaBean是一种遵循特定规范的Java类,通常用于封装数据和业务逻辑,使得这些组件可以在多个Java应用中重用,例如在JSP(JavaServer ...
在Java Web开发中,利用Javabean和JSP可以构建一个完整的文件管理系统,包括文件的上传、显示和下载等功能。以下将详细介绍如何通过这些技术实现这些功能。 首先,我们要理解Javabean和JSP的角色。Javabean是一种...
在IT领域,尤其是在Web开发中,`JSP (JavaServer Pages)`、`Servlet`和`JavaBean`是构建动态网站的常用技术栈。本案例主要展示了如何利用这三种技术来实现对MySQL数据库的访问。接下来,我们将深入探讨这些知识点。 ...