




已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第16讲,View层的开发:JavaBean在JSP中的使用练习,回顾,什么是JNDI?为什么要使用JNDI?连接数据库有几种方式?,本讲问题,什么是JavaBean?在JSP中如何使用JavaBean?,本讲任务,升级E-Book电子书店系统实现以下功能使用JSP标准动作进行用户登录验证使用JSP标准动作添加用户订单,掌握JavaBean的概念会使用JSP标准动作,本讲目标,组件开发,JavaEE是基于组件开发,请求,Servlet,JavaBean,JSP页面,执行,调用,转向,响应,JSTL,使用,访问,返回数据,数据库,客户端,组件开发,小孩的积木,积木块,组装,成品,JavaEE组件,组件间协作,应用程序,为什么需要JavaBean,publicintsaveOrder(Stringusername,Stringzipcode,Stringphone,Stringcreditcard,doubletotal)trycon=ConnectionManager.getConnction();StringstrSql=insertintoBookOrder(username,zipcode,phone,+creditcard,total)values(?,?,?,?,?);pStatement=con.prepareStatement(strSql);pStatement.setString(1,username);/设置其它参数值result=pStatement.executeUpdate();catch(SQLExceptionsqlE)sqlE.printStackTrace();returnresult;,参数过多,且为对象属性,如何按照OO设计参数?,使用JavaBean进行参数的传递,参数的使用,JavaBean介绍,接触过的JavaBean新闻发布中新闻的一级、二级标题JavaBean的来源Bean:豆子JavaBean是应用程序的组成部分JavaBean的分类封装数据封装业务方法,publicclassSecondLevelTitlepublicSecondLevelTitle()privateintid;privateStringtitleName;privateintparentTitleId;privateStringcreator;publicintgetId()returnthis.id;publicvoidsetId(intid)this.id=id;/其它setter、getter方法,封装数据的JavaBean,publicclassOrderprivateStringuserName;/用户名privateStringzipcode;/邮编privateStringphone;/电话privateStringcreditcard;/信用卡privatedoubletotal;/总额publicOrder()publicvoidsetUserName(StringuserName)this.userName=userName;publicStringgetUserName()returnusername;/其它属性的setter、getter方法,JavaBean-Order.java,将属性声明为私有属性,无参的公有构造方法,公有的设置属性值方法setXxx(),公有的获取属性值方法getXxx(),创建JavaBean,使用Eclipse工具自动生成getter/setter方法,封装业务的JavaBean,业务类-OrderOperation.java,publicclassOrderOperationpublicintsaveOrder(Orderorder)intresult=0;tryConnectioncon=ConnectionManager.getConnction();StringstrSql=insertintoBookOrder(username,zipcode,phone,+creditcard,total)values(?,?,?,?,?);PreparedStatementpStatement=con.prepareStatement(strSql);pStatement.setString(1,order.getUserName();/设置其它的参数值result=pStatement.executeUpdate();catch(SQLExceptionsqlE)sqlE.printStackTrace();returnresult;,把封装好数据的对象作为参数,从对象中取数据,演示示例1:OrderOperation.java,JavaBean与JSP,广义讲,符合规范的Java类都是JavaBeanJavaBean的作用封装数据处理业务逻辑JSP与JavaBean如何结合使用呢?ScriptletJSP标准动作,为什么需要JSP标准动作,通过Java脚本使用后台JavaBean美工难以维护使用JSP标准动作JSP标准动作包括:,JSP标准动作,useBean动作,.,useBean动作创建或者获得一个对象JavaBean的scope设置:,创建对象的名称,创建对象的类型,指定对象的范围,setProperty和getProperty动作,.,value设置JavaBean的该属性值,property指定JavaBean的属性名称,设置JavaBean的属性值获取JavaBean中属性的值,.,name属性指定对JavaBean类的引用,与useBean中的id一致,property指定JavaBean的属性名称,name属性指定对JavaBean类的引用,JSP标准动作示例,使用JSP标准动作显示数据-processorder.jsp,/设置其它属性值用户名:.邮编:.电话:.信用卡:.总价:.,获得属性值,并显示在页面上,获得用户提交数据,并为属性赋值,param的使用,使用param显示数据-processorder.jsp,/设置其它属性值用户名:./显示order对象其它属性值姓名:.总价:.,获得用户提交数据,获得属性值,并显示在页面上,自动转换数据类型,现场编程,请使用JSP标准动作创建一JavaBean对象,并对该对象的属性进行赋值类所在的包和类名:com.entity.Users类的属性userName,password,常见错误,要与表单元素名称对应,数据显示为null,常见错误,应该是userName,这是什么错误?,在Order中没有找到属性userName2,属性名称错误,常见错误,应该是“order”,要与useBean中的id一致,引用名称错误,这是什么错误?,JSP标准动作调用JavaBean,publicclassSimpleBeanprivateStringname;privateintage;publicSimpleBean()/无参的构造函数System.out.println(调用无参构造方法,创建实例!);publicStringgetName()/属性的getter方法System.out.println(调用了getName()方法,获取name值);returnname;publicvoidsetName(Stringusername)/属性的setter方法name=username;System.out.println(调用了setName()方法,设置name值);,JSP标准动作与JavaBean的getter、setter方法,SimpleBean.java,在JSP中使用JavaBean姓名:年龄:,方法是谁调用的?,setProperty动作调用JavaBean的setter方法,getProperty动作调用JavaBean的getter方法,使用标准动作实现登录验证,UserManager.java,publicbooleangetValid()Connectioncon=ConnectionManager.getConnection();PreparedStatementpStatement=null;Stringsql=select*fromuserinfowhereloginname=?;trypStatement=con.prepareStatement(sql);pStatement.setString(1,getName();ResultSetrs=pStatement.executeQuery();if(rs.next(),判断是否存在该用户,演示示例2:UserManager.java,登录验证,标准动作和JavaBean,使用JSP标准动作和JavaBean进行数据验证,创建UserManager对象,并为属性赋值,调用验证方法,判断用户是否存在,JSP标准动作,转发到page属性指定的页面,等价与RequestDispatcher对象的forward(req,res)方法,根据结果,转发到相应页面,lo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年泉州泉港区部分公办学校专项招聘编制内新任教师(二)考前自测高频考点模拟试题及答案详解(各地真题)
- 天津市人民医院影像时间窗判断考核
- 沧州市中医院全院性流程再造项目设计与领导力评估
- 衡水市人民医院护理管理科研创新考核
- 2025人民医院设备质控检测考核
- 2025年合肥文旅博览集团野生动物园管理有限公司招聘25人考前自测高频考点模拟试题及答案详解(历年真题)
- 沧州市人民医院肛肠疾病中医治疗考核
- 2025年4月福建厦门市市场监督管理局所属事业单位厦门市特种设备检验检测院简化程序招聘事业单位专业技术岗位人员1人考前自测高频考点模拟试题及答案详解(历年真题)
- 衡水市人民医院儿童核素治疗考核
- 大学磁铁课件
- 基础水文数据采集与管理项目方案
- 2025关于信息技术外包合同
- 河北省金太阳2025-2026学年高三上学期9月联考语文试卷
- 组织工程瓣膜修复研究-洞察及研究
- 注塑机操作安全培训课件
- 2.1《整十、整百数乘一位数的口算和估算》(课件) -2025-2026学年三年级数学上册 苏教版
- 艾媒咨询2025年中国新式茶饮大数据研究及消费行为调查数据
- 雷达式水位计安装单元工程质量验收评定表
- 挂靠公司走帐协议书范本
- 2025年中国电信集团校园招聘笔试模拟试题集
- 全屋定制经销商合同协议
评论
0/150
提交评论