`

JSP和JavaBean

阅读更多
JSP和JavaBean

  本章将详细介绍什么是JavaBean,以及如何定义JavaBean。还将介绍如何在JSP中调用JavaBean,如何设置并获得JavaBean属性以及设置JavaBean的范围,最后还将介绍如何移除JavaBean。
通过本章的学习,读者应该能够完成如下几个目标。
熟练掌握定义JavaBean
熟练掌握在JSP中调用JavaBean
熟练掌握设置并获得JavaBean属性
熟练掌握设置JavaBean的范围
熟练掌握移除JavaBean

1 JavaBean简介

      JavaBean是为Java语言设计的软件组件模型,具有可重复使用和跨平台的特点。可以通过JavaBean来封装业务逻辑,进行数据库操作等。从而很好的实现业务逻辑和前后台程序的分离。
      JavaBean其实就是一个简单的Java类,这也就意味着,Java类的一切特征,JavaBean也都具有。JavaBean同样可以使用封装、继承、多态等特性。
JavaBean可以分为两类,一类是有用户接口(UI)的JavaBean,一类是没有用户接口的JavaBean。一般在JSP中使用的都是没有用户接口的JavaBean,因此本章所介绍的JavaBean都是指没有用户接口的JavaBean。这类JavaBean只是简单的进行业务封装,如数据运算和处理、数据库操作等。

      一个标准的JavaBean应该具有如下几个特点。
1、JavaBean必须是一个公开的类,也就是说JavaBean的类访问权限必须是public的。
2、JavaBean必须具有一个无参数的构造方法。如果在JavaBean中定义了自定义的有参构造方法,就必须添加一个无参数构造方法,否则将无法设置属性;如果没有定义自定义的有参构造方法,则可以利用编译器自动添加的无参构造方法。
3、JavaBean一般将属性设置成私有的,通过使用getXXX()方法和setXXX()方法来进行属性的取得和设置。

1.1 定义JavaBean
02 //一个简单的JavaBean示例
03 public class UserBean {
04 // 用户名属性
05 private String username;
06 // 用户密码属性
07 private String password;
08 //获得用户名
09 public String getUsername() {
10 return username;
11 }
12 //设置用户名
13 public void setUsername(String username) {
14 this.username = username;
15 }
16 //获得用户密码
17 public String getPassword() {
18 return password;
19 }
20 //设置用户密码
21 public void setPassword(String password) {
22 this.password = password;
23 }
24 }

1.2 在JSP中调用JavaBean
在JSP中调用JavaBean,有如下两个优点。
1、提高代码的可复用性。
对于通常使用的业务逻辑代码,如数据运算和处理、数据库操作等,可以封装到JavaBean中。在JSP文件中可以多次的调用JavaBean中的方法来实现快速的程序开发。
2、将HTML代码和Java代码进行分离,程序利于开发维护。
将业务逻辑进行封装,使得业务逻辑代码和显示代码想分离,不会互相干扰。避免了代码有多有复杂的问题,方便了日后的维护。
要想要JSP中调用JavaBean,就需要使用到<jsp:useBean>动作指令,其语法格式如下。
<jsp:useBean id="对象名称" scope="储存范围" class="类名"></jsp:useBean>
其中id属性表示该JavaBean实例化后的对象名称。scope属性用来指定该JavaBean的范围,也就是指JavaBean实例化后的对象储存范围。范围的取值有如下四种,分别是page、request、session和application。class属性用来指定JavaBean的类名,这里所指的类名包括包名和类名。

2 设置JavaBean属性
JSP中提供了一个<jsp:setProperty>动作指令来设置JavaBean属性,其有如下四种语法格式。
<jsp:setProperty name="实例化对象名" property="*"/>
<jsp:setProperty name="实例化对象名" property="属性名称"/>
<jsp:setProperty name="实例化对象名" property="属性名称" param="参数名称"/>
<jsp:setProperty name="实例化对象名" property="属性名称" value="属性值" />
其中name属性使用设置实例化对象名,和<jsp:useBean>中的id属性保持一致。property属性用来指定JavaBean属性名称。param属性用来指定接受参数名称,value属性用来指定属性值。

2.1根据所有参数设置JavaBean属性
第一种<jsp:setProperty>动作指令用来根据所有参数设置JavaBean属性,其语法格式如下。
<jsp:setProperty name="实例化对象名" property="*"/>
其中“*”表示根据表单传递的所有参数来设置JavaBean的属性。比如通过表单传递了两个参数,如username和password,这时就可以自动的对JavaBean中的username属性以及password属性进行赋值。这里必须注意的是,表单的参数必须和JavaBean中的属性名称保持大小写一致,否则无法进行赋值操作。

2.2 根据指定参数设置JavaBean属性
第二种<jsp:setProperty>动作指令用来根据指定参数设置JavaBean属性,其语法格式如下。
<jsp:setProperty name=“实例化对象名” property=“属性名称"/>
第二种<jsp:setProperty>动作指令相比第一种<jsp:setProperty>动作指令具有更好的弹性。第一种<jsp:setProperty>动作指令要求设置所有的参数,而第二种<jsp:setProperty>动作指令可以用来设置指定的参数。比如通过表单传递了两个参数,如username和password,这时就可以指定只为JavaBean的username属性赋值,也可以指定只为JavaBean的password属性赋值。

2.3 根据指定参数设置指定JavaBean属性
第三种<jsp:setProperty>动作指令用来根据指定参数设置指定JavaBean属性,其语法格式如下。
<jsp:setProperty name="实例化对象名" property="属性名称" param="参数名称"/>
第三种<jsp:setProperty>动作指令相比前两种<jsp:setProperty>动作指令更加具有弹性。前面两种<jsp:setProperty>动作指令都需要设置参数和JavaBean属性必须相同,而且必须保证大小写一致。而第三种<jsp:setProperty>动作指令没有此限制,因为可以通过其指定需要设置的JavaBean属性。

2.4 设置指定JavaBean属性为指定值
第四种<jsp:setProperty>动作指令用来设置指定JavaBean属性为指定值,其语法格式如下。
<jsp:setProperty name="实例化对象名" property="属性名称" value="属性值" />
第四种<jsp:setProperty>动作指令相比前三种<jsp:setProperty>动作指令更加具有弹性。前面三种<jsp:setProperty>动作指令都需要接受表单参数,而第四种可以根据需要动态的设置JavaBean属性值。

3 获得JavaBean属性
前面介绍的获得JavaBean属性都是通过调用实例化对象名从而获得的,下面来介绍一种更加简便的方法。
JSP提供了一个<jsp:getProperty>动作指令用来很方便的获得JavaBean属性,其语法格式如下。
<jsp:getProperty name="实例化对象名" property="属性名称"/>
其中name属性用来设置实例化对象名,同样必须和<jsp:useBean>中的id属性保持一致。property属性用来指定需要获得的JavaBean属性名称。

4 设置JavaBean的范围
在前面几章曾经介绍过JSP属性有四种存储范围,分别为page、request、session以及application。同样也可以设置JavaBean的存储范围,其取值和意义同属性保存范围完全相同。下面将分别介绍如何设置各不同范围JavaBean,以及不同存储范围的区别。

5 移除JavaBean
JavaBean会根据其设置的范围来决定其生命周期,当生命周期结束,JavaBean将自动移除。不过设计着也可以手动的移除该JavaBean,从而节省内存。
JavaBean的移除对于不同范围的JavaBean而不同,分别通过调用pageContext、request、session、application的removeAttribute(String name)方法来移除page范围、request范围、session范围以及application范围的JavaBean。其中name属性设置为实例化对象名,必须和<jsp:useBean>中的id属性保持一致。


分享到:
评论

相关推荐

    JSP 和 JavaBean 学生管理系统初建

    **JSP(JavaServer Pages)和JavaBean是Java Web开发中的关键组件,它们在构建学生管理系统中发挥着重要作用。** **JSP技术**是Java平台上的动态网页技术,它允许开发者将HTML代码与Java代码结合在一起,使得网页...

    jsp和javabean的实例

    jsp和javabean的实例 jsp和javabean是当今非常流行的动态网站开发技术,jsp作为一个很好的动态网站开发语言,已经得到了越来越广泛的应用。在jsp应用程序中,jsp+javabean的组合已经成为了事实上最常见的jsp程序的...

    Servlet、jsp和javabean图书管理系统

    【Servlet、JSP和JavaBean图书管理系统】 Servlet是Java服务器端的一种技术,它主要用于扩展Web服务器的功能,处理HTTP请求并生成动态内容。在本图书管理系统中,Servlet扮演着控制器的角色,接收用户请求,调用...

    Jsp和javabean的应用

    **JSP(JavaServer Pages)和JavaBean是Java Web开发中的两个重要组件,它们共同构建了动态网页的基石。在本教程中,我们将深入探讨它们的结合应用以及如何通过视频学习这种方式。** **JSP技术简介** JSP是Java平台...

    jsp+javaBean的计数器

    本文将详细介绍如何使用jsp和javaBean技术实现一个简单的网站访问计数器功能。此计数器适用于初学者,不仅可以帮助理解jsp的基本用法,还能加深对javaBean在实际项目中的运用。以下内容将涵盖项目的整体架构、各个...

    JSP和JavaBean学生管理系统初建.

    **JSP和JavaBean学生管理系统初建** 在Web开发领域,JSP(JavaServer Pages)和JavaBean是两种常见的技术,常被用来构建动态、数据驱动的web应用程序,如学生管理系统。本系统初建旨在帮助学习者理解如何利用这两项...

    在线书店(jsp+javabean)

    在线书店(jsp+javabean)是一个基于Web的图书销售系统,主要利用JavaServer Pages (JSP) 技术和JavaBean组件进行开发。对于初学者来说,这是一个很好的实践项目,可以帮助他们深入理解JSP和JavaBean在实际应用中的...

    基于JSP和JavaBean的blog系统

    【基于JSP和JavaBean的blog系统】是一个利用Web开发技术构建的在线博客平台,它主要依赖于JavaServer Pages(JSP)技术和JavaBean组件来实现动态网页和业务逻辑处理。这种架构允许开发者将表现层(视图)与业务逻辑...

    Jsp+JavaBean实现简单的在线购物车

    提供的"ShoppingCart.java"和相关的JSP文件(如"cart.jsp")包含了实际的实现细节,例如如何定义JavaBean类,以及如何在JSP中使用这些类来处理用户请求。 通过以上步骤,我们可以创建一个基本的JSP+JavaBean在线...

    jsp和JavaBean实现数据分页

    本篇将介绍如何使用JavaServer Pages (JSP) 和 JavaBean 技术来实现数据分页。JSP是Java的一种动态网页技术,而JavaBean则是一种可重用的Java组件,它们结合可以提供强大的后端功能。 首先,我们需要理解数据分页的...

    网上商城购物系统 JSP+javabean

    本项目采用JSP(JavaServer Pages)和javabean技术构建,结合sqlserver2005数据库,构建了一个两层架构的网上购物平台。以下是关于这个系统及其关键技术的详细说明: **JSP技术**: JSP是一种动态网页开发技术,它...

    jsp+javabean编写的学生管理系统

    本文将深入解析一个使用JSP(JavaServer Pages)和JavaBean技术构建的学生管理系统,该系统与SQL Server数据库配合,实现了对学生信息的管理。 首先,我们要理解JSP和JavaBean的角色。JSP是Java平台上的动态网页...

    自己写的一个购物车(jsp+javabean)

    在这个项目中,开发者使用了JSP(JavaServer Pages)和JavaBean两种核心组件来构建功能。 JSP是Java的一种动态网页技术,它允许开发人员在HTML页面中嵌入Java代码,使得网页具有服务器端的处理能力。在本项目中,`...

    JSP+javaBean 博客网

    综上所述,"JSP+JavaBean 博客网"项目结合了JSP的动态页面展示能力、JavaBean的业务逻辑封装、MyEclipse的开发便捷性和SQL Server 2000的数据库存储功能,构建了一个功能完备、易于维护的博客平台。对于学习者来说,...

    运用JSP与JavaBean实现的BBS

    【描述】:“运用JSP与JavaBean实现了次项目”表明这是一个基于Web的论坛系统(BBS),它利用了JavaServer Pages(JSP)技术和JavaBean组件来构建。JSP是Java平台上的动态网页技术,而JavaBean是Java中的一个可重用...

    jsp+javaBean做的一个企业门户网站毕业设计源码

    "jsp+javaBean做的一个企业门户网站毕业设计源码" 这个标题表明这是一个使用JSP(JavaServer Pages)技术和JavaBean组件进行开发的企业级网站项目,主要用于毕业设计。JSP是Java平台上的动态网页技术,而JavaBean则...

Global site tag (gtag.js) - Google Analytics