第七章View层开发:JavaBean在JSP中的使用
本章目标:
掌握并理解JavaBean的概念
会使用JavaBean
会使用JSP标准动作
为什么需要JavaBean
JavaEE程序是基于组件开发的,应用程序同样是由很多的JavaBean组成的。
面向对象思想:
什么是JavaBean ?
?JavaBean是Java
在JSP
?Java类,这个类可以重用。从JavaBean功能上可以
分为以下两类:
●封装数据。
●封装业务。
?JavaBean一般情况下满足一下要求:
●是一个公有的类,并提供无参的公有的构造方法。
●属性私有
●具有公有的访问属性getter和setter方法。
封装数据的JavaBean
?一个封装数据的JavaBean一般情况下对应着数据库内的一张表(或视图),
JavaBean的属性与表(或视图)内字段的属性一一对应。
?提供相应的getter和setter方法。
封装业务的JavaBean
?对于一个封装数据的JavaBean,一般都会有一个封装该类的业务逻辑和业务
操作的JavaBean与之对应。
JSP与JavaBean
如果在JSP页面中大量写入了Java代码,一来美工不易进行美化,另外对程序来说不易进行维护和扩展,Java为我们提供了JSP标准动作来实现在JSP页面中调用JavaBean。
JSP标准动作在浏览器请求JSP页面时执行。JSP标准动作可以使用现有的JavaBean组件和属性,以及将用户请求转到另一个网页。
JSP标准动作使用
语法:
? Jsp:useBean 动作用来装载一个将在JSP 页面中使用的JavaBean 。这个功能非常有用,因为它使得我们既可以发挥Java 组件重用的优势,同时又避免了损失JSP 的方便性。
?
其中,id 用于创建JavaBean 的引用名;class 用于指定JavaBean 的类;scope
? setProperty 动作用于设置useBean
中指定的JavaBean 的属性值。setProperty 动作指定名称、属性、值和参数,用于赋给JavaBean 的属性。
?
其中,name 指定useBean 中使用的JavaBean 的Id;property 指定要为之设置值的JavaBean 的属性名称;value 指定要为属性设置的值;param 指定用于输入数据的表单元素名称,并个属性赋值。
param 属性不能与value 属性一起使用。
? useBean 中id 所指定的对象通过setProperty 中对property 指定的属性进行赋值后,可以使用getProperty 动作获取JavaBean 中指定的属性值。
? 其中,name 指定useBean 中使用的JavaBean 的id;property 指定要获取JavaBean 的属性名称。
JSP标准动作的使用:
?常见错误:
◆ 1. setProperty标准动作的param属性
●在设置param属性值时,一定要注意与form表单元素的对应关系、
◆setProperty和getProperty标准动作的name属性。
JSP标准动作调用JavaBean
JSP的另一种标准动作:forward,它的功能是实现页面的跳转,它的实质是
Page属性指定欲跳转的页面路径和文件名称。
Model I介绍:、
使用JSP和JavaBean来实现不同的功能。没有使用Servlet来进行程序流程的控制。这种编程模式被称为Model I模式。相应的把MVC模式称为Model II模式。、 这两种模式的区别只是在Model II中使用Servlet来进行程序流程控制。而Model I中没有Servlet的参与。由此可见,使用Model II模式进行程序的设计,思路更加清晰,结构更加合理。
总结:
使用JSP标准动作有以下好处:
?可以方便程序开发,体现在代码的重用。
?可以方便美工人员美化页面,在HJSP中减少大量的Java代码。
?简化了数据的获取和封装的过程。
常用的JSP标准动作有以下4中。
?useBean
?setProperty
?getProperty
?forward
Model I和Model II的区别如下:
?Model I使用JSP+JavaBean实现。
?Model II使用JSP+JavaBean+Servlet实现。
?使用Model I设计的项目缺少控制层,不易进行扩展,值适合开发中的小型项
目。
第五章使用JavaBean 一、选择题 1.下面哪一项属于工具Bean的用途?() A)完成一定运算和操作,包含一些特定的或通用的方法,进行计算和事务处理。 B)负责数据的存取 C)接受客户端的请求,将处理结果返回客户端 D)在多台机器上跨几个地址空间运行 2.JavaBean可以通过相关jsp动作指令进行调用。下面哪个不是JavaBean可以使用的jsp 动作指令?() A)
《JSP程序设计》课程实验实训报告 实验名称JavaBean的创建与使用实验序号2 学号姓名班级 实验日期2012-4-17指导教师成绩 一、实验目的和要求 目的:掌握在不同环境中编辑和运行类的方法; 掌握MV开发模式在JSP中的应用; 掌握JavaBean的基本特征; 了解到JavaBean的作用域。 二、实验具体内容及步骤 1、浏览一个业务逻辑较为复杂且没有使用MV开发模式的页面 1)在Tomcat的webapps文件夹下创建一个sy5的子文件夹,即创建一个名为sy5的工程; 找到Tomcat服务器的文件夹,将文件example3_8.jsp复制到sy5文件夹下,然后启动Tomcat服务器; 2)打开IE浏览器,在其地址栏输入:http://localhost:8080/sys5/example3_8.jsp浏览该页面; 3)查看页面的界面代码(V层)和业务逻辑代码(M层)。 2、在Java应用程序中使用用户定义的包与类(使用增强型编辑工具EditPlus) 1)双击文件夹EditPlus下的editplus.exe文件(即运行增强型编辑软件); 2)使用快捷键“Ctrl+O(字母O)”,打开文件TestRect.java,注意一条打包命令(包名为pp)和两个类(两个类名分别为Rectangle和TestRect(主类); 3)按快捷键“Ctrl+1(数字1)”即完成编译,相当于在命令行方式下执行命令“javac TestRect.java -d.”。可以看到会在当前目录内生成一个名为pp的文件夹,该文件夹里含有两个编译了的class 类文件; 4)按快捷键“Ctrl+2”即可运行,相当于在命令行方式下执行命令“java pp.TestRect”。 3、JavaBean与MV开发模式 1)在sys文件夹下再建立一个名为“WEB-INF”的子文件夹; 2)在WEB-INF文件夹下再建立一个名为“classes”的子文件夹; 3)将两个符合JavaBean规范的类文件Stringtonum.java和Triangle.java复制到classes文件夹里; 4)双击文件夹EditPlus下的editplus.exe文件(即运行增强型编辑软件),分别打开classes文件夹里的两个java类、分别按ctrl+1编译; 5)重新启动Tomcat服务器; 6)分别将Triangle.jsp和Triangle1.jsp复制到sy5文件夹里,然后使用EditPlus中打开,查看对两个类(JavaBean)的引用; 7)启动浏览器,在地址栏里分别输入http://localhost:8080/sy5/Triangle.jsp http://localhost:8080/sy5/Triangle1.jsp进行浏览。 三、实验结果与分析
JSP JavaBean Servlet实现用户登录和注册 1 数据库: create database student; use student; create table user( id int primary key auto_increment, user varchar(50) not null, pwd varchar(50) not null, name varchar(50) not null, *** varchar(50) not null, age int(50) not null ); 2 index.jsp <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme() "://" request.getServerName() ":" request.getServerPort() path "/"; %>