《JavaBean技术(2学时).ppt》由会员分享,可在线阅读,更多相关《JavaBean技术(2学时).ppt(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Java与J2EE架构计算机学院Java与J2EE架构第7章 JavaBean技术7.1 基本概念7.2 JavaBean的设计7.3 JavaBean练习Java与J2EE架构7.1 基本概念引例JSP脚本关于Java类的声明:女朋友的姓名:思考存在的主要问题业务逻辑和表示层相混合可读性差,不易维护移植性和重用性差Java与J2EE架构JavaBean技术nJavaBean是一些可移植、可重用,并可以组装到应用程序中的Java类(属性+方法的封装体)。nJavaBean可以较好地实现后台业务逻辑和前台表示逻辑的分离,使得JSP程序更加可读、易维护。nJSP+JavaBeans(JSP Mod
2、el 1)是一种常用的Web开发模式。【Return】Java与J2EE架构7.2 JavaBean的设计n设计JavaBean的关键:(1)如何定义JavaBean的属性和方法;(2)如何在JSP中调用JavaBean.Java与J2EE架构(1)JavaBean类中方法的命名规则n 方法命名规则:1.如果属性(成员变量)的名字是xxxx,则相应的有用来设置和获得属性设置和获得属性的两个方法,分别为:public void setXxxx(dataType data)public dataType getXxxx()2.如果有构造函数,则应为public型,且无参数。Xxxx第一个字母为大写
3、一般类的属性应该是privateJava与J2EE架构JavaBean示例n设计一个JavaBean(Box类):n属性:length/width/height double类型n方法:getXxxx和setXxxx(注:可自动生成)不带参数构造函数(初始化属性值)求体积函数getCV()Java与J2EE架构创建过程n新建Web项目(testBean)n新建public class;(Box.java,package javaBean)n输入属性变量:length/width/height double类型n在代码编辑区右键SourceGenerate Getters and Setters
4、 select all 属性,public型自动生成getXxxx和setXxxx;n不带参数构造函数和求体积函数手工输入:public Box()length=0;width=0;height=0;public double getCV()return length*width*height;Java与J2EE架构创建过程(cont.)n编译JavaBean:无错误后保存自动生成Box.class;n部署JavaBean:n此时会自动将javaBean包(box.class)放到Web-INF/classes中(当前项目下不可见)【return】Java与J2EE架构(2)JSP访问Java
5、BeanJSP动作组件n 使用JavaBeann 设置属性值n 获取属性值Java与J2EE架构n格式:或 page(默认)request session applicationJavaBean3个属性Java与J2EE架构例如添加:Java与J2EE架构n格式:jsp:setProperty name=bean的id名称 property=bean的属性 value=值或/n例如:nnjsp:setProperty name=box property=length value=/直接设值或使用表达式Java与J2EE架构n格式:n例如:n返回属性的值在当前标签处显示Java与J2EE架构调用
6、JavaBean的其他方法n格式:Bean的id.方法名(参数)n例如:设置/读取属性值的简单用法Java与J2EE架构完整示例 在JSP中使用JavaBean长方体的长度为:长方体的宽度为:长方体的高度为:%out.println(长方体的容积为:+box.getCV()+);%index.jsp或者import=java.util.*,javaBean.Box直接设值【Return】或box.getLength()Java与J2EE架构补充:scope=“session”在另一页面 2.jsp:长方体的长度为:要重复一次取出值看看:如果先前已赋值,则显示的是该值否则,将是初始化时的值0Ja
7、va与J2EE架构7.3 JavaBean练习n练习1:设计一个Triangle的JavaBean,并测试。n属性:三条边:a,b,c (double类型)n方法:不带参数构造函数(使属性值均为0)是否构成三角形isTriangle()求周长函数getCir()求面积函数getArea()Java与J2EE架构练习2-显示系统时间的JavaBean秒钟能自动更新Java与J2EE架构参考package javaBean;import java.util.*;public class DateTime public String getDateTime()Calendar now =Calend
8、ar.getInstance();String dateTime =now.get(Calendar.YEAR)+年+(now.get(Calendar.MONTH)+1)+月 +now.get(Calendar.DATE)+日 +now.get(Calendar.HOUR)+时 +now.get(Calendar.MINUTE)+分 +now.get(Calendar.SECOND)+秒;return dateTime;DateTime.javaindex.jsp该JavaBean只有一个方法Java与J2EE架构练习3:JavaBean值传递 长 宽 高 abc如何实现JavaBean的参
9、数传递?Java与J2EE架构JavaBean使用参数paramn直接使用request对象中的参数名设置JavaBean属性值。但不使用 request.getParameter(参数名)形式。n格式:param和value属性不能同时使用Java与J2EE架构示例 在JSP中使用JavaBean 长方体的长度为:长方体的宽度为:长方体的高度为:%out.println(长方体的容积为:+box.getCV()+);%1.jsp不使用Java与J2EE架构更简化写法 长 宽 高 在满足前提下,1.jsp 可一句话搞定赋值:前提:form提交数据的标签名称要与javaBean的类属性名称保持一致Java与J2EE架构练习4:JavaBean实现页面访问统计n设计思路:nJSP页面引用JavaBean(定义int count计数)nJavaBean作用域为applicationJava与J2EE架构package javaBean;public class counter int count=0;public void count()count+;/计数 public int getCount()return count;public void setCount(int count)this.count=count;counter.java 当前页面访问次数:【完】jsp程序