《Java-Web-程序设计模块5.ppt》由会员分享,可在线阅读,更多相关《Java-Web-程序设计模块5.ppt(32页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 模块5 JavaBean技术Java Web 程序设计“十三五”职业教育国家规划教材配套资源目录项目14 封装用户信息的JavaBean项目15 数据库连接的JavaBean项目16 应用JavaBean实现购物车项目14 封装用户信息的JavaBean14.1 项目描述与实现(1)描述 实现封装用户信息的JavaBean项目14 封装用户信息的JavaBean14.1 项目描述与实现 (2)实现1.创建类。在项目JavaWebExample下的src目录下,创建chapter5的包,接着创建名为UserInfo.java的类。2.以表5-1所示信息,为UserInfo.java类增加用户名
2、、密码、性别、年龄和家庭住址等属性对应的变量。项目14 封装用户信息的JavaBean14.1 项目描述与实现 (2)实现 3.利用Eclipse工具,为每个属性自动添加getXxx()和setXxx()方法,完成后,用户信息的JavaBean类文件建立即已完成,其代码如程序5-1所示。程序5-1:UserInfo.javapackage chapter5;public class UserInfo private String oolean;private String userPassword;private String sex;private String age;private St
3、ring address;public String getUserName()return oolean;public void setUserName(String oolean)this.userName=oolean;public String getUserPassword()return userPassword;.项目14 封装用户信息的JavaBean14.1 项目描述与实现(1)描述 在在JSPJSP中使用中使用JavaBeanJavaBean项目14 封装用户信息的JavaBean14.1 项目描述与实现(2)实现 1.创建JSP,在chapter5目录下创建exam14_
4、beantest.jsp,并在Dreamweaver中打开该文件,制作页面显示表格。2.编写JavaBean调用程序。在 Eclipse编 写 代 码,在 第 1步 的 基 础 上,增 加 调 用 JavaBean的 动 作 指 令,即 程序程序5-2 exam14_beantest.jsp5-2 exam14_beantest.jsp部分代码部分代码项目14 封装用户信息的JavaBean14.2 新知识点-JavaBean 1.JavaBean1.JavaBean介绍介绍 JavaBean是一种Java语言写成的可重用组件,归根结底就是一个封装了属性和方法的类。JavaBean的特点为:一
5、次性编写 任何地方执行 任何地方重用 2.JavaBean的组成 一个Bean由两部分组成:属性(properties)方法(method)项目14 封装用户信息的JavaBean14.2 新知识点-JSP中使用JavaBean 在JSP程序中,既可以用程序代码来访问JavaBean,也可以通过JSP动作指令来访问。JSP中使用JavaBean在14.1节已经应用,此处详细介绍JSP调用JavaBean的动作指令。(1)在JSP中调用JavaBean的动作指令为。其语法格式为:idid属性:属性:代表JavaBean对象的ID,表示引用JavaBean对象的局部变量名,以及存放在特定范围内的属
6、性名。classclass属性:属性:用来指定JavaBean对象的类名,可带包名。ScopeScope属性:属性:用来指定JavaBean对象的作用范围项目14 封装用户信息的JavaBean14.2 新知识点-JSP中使用JavaBean (2)设置JavaBean的属性,在JSP中的动作指令为,其语法格式为:在该指令中,其各个属性的作用为:name属性属性:要设置属性的JavaBean的名称,必须和标签中的id属性值匹配。property属性属性:用来指定JavaBean对象的某个属性值。如果值为*号,则是指定所有属性。value属性:属性:用来指定属性的具体值。该指令相当于调用Java
7、Bean中的setXxx(xx)方法。项目14 封装用户信息的JavaBean14.2 新知识点-JSP中使用JavaBean (3)获取JavaBean属性,在JSP中的动作指令为。其语法格式为:在该指令中,其各个属性的作用为:namename属性属性:要获取属性的JavaBean的名称,必须和标签中的id属性值匹配。propertyproperty属性属性:用来获取JavaBean的某个属性值。如果值为*号,则是指定所有属性。该指令相当于调用JavaBean中的getXxx(xx)方法。项目14 封装用户信息的JavaBean14.3 扩展-表单参数设置JavaBean中的属性1.通过HT
8、TP表单参数值设置JavaBean属性 可以通过HTTP表单的参数值来设置Bean响应的属性值,要求表单参数的名字必须与Bean属性的名字相同。其语法格式为:2.通过request参数值设置JavaBean属性 可以通过request的参数值来设置JavaBean中的属性值,要求request参数名必须与Bean的属性名相同,其语法格式为:项目15 数据库连接的JavaBean15.1 项目描述与实现(1)描述 实现用户的添加,用户信息包括,用户名,密码。将信息从表单获取后写入到数据库,要求用JavaBean方式来操作数据库。项目15 数据库连接的JavaBean15.1 项目描述与实现(2)
9、实现 1.数据库连接的JavaBean。2.编写表单。程序程序5-7 DBManager.java部分代码部分代码public Connection ConnDB()conn=null;try String url=”jdbc:mysql:/localhost:3306/test?useUnicode=true&character=utf-8”;Class.forName(“com.mysql.jdbc.Driver”).newInstance();conn=DriverManager.getConnection(url,”hncst”,”123”);return conn;catch(Exc
10、eption fe)System.err.println(“ConnDB():“+fe.getMessage();return null;项目15 数据库连接的JavaBean15.1 项目描述与实现(2)实现 3.编写表单处理程序,并调用程序5-7的JavaBean将表单数据写入数据库。程序5-9 exam15_add_user_do.jsp项目15 数据库连接的JavaBean15.2 新知识点-数据库连接的JavaBean 在JSP文件中HTML与大量Java代码交织,且直接嵌入访问数据库的代码及SQL 语句则会使页面设计困难。使得程序员难以理解、维护、扩展、调试程序。将JSP和Java
11、Bean技术结合在一起,可以用JavaBean实现业务逻辑和数据库操作的封装,JSP只负责页面的显示。用户端浏览器发送JSP文件请求,JSP文件访 问JavaBean,JSP页面响应请求并将处理结果返回客户,而使用JavaBean处理所有的数据访问。其架构如图5-8所示:项目15 数据库连接的JavaBean15.3 扩展采用连接池的JavaBean读取用户信息列表 (1)描述 利用数据库连接池技术管理数据库连接,查询hncst数据库中users数据表中的数据,并以表格形式显示。项目15 数据库连接的JavaBean(2)实现 1编写JNDI配置代码 2.编写数据库连接工具类 3.使用连接池程
12、序5-10 context.xml 标签 项目15 数据库连接的JavaBean(2)实现 1编写JNDI配置代码 2.编写数据库连接工具类 3.使用连接池程序5-10 context.xml 标签 在JSP中以JavaBean形式调用该连接池的代码如下所示:在Servlet中调用该程序连接数据库的代码如下:private DBManager db=new DBManager();项目15 数据库连接的JavaBean2.编写数据库连接工具类 编写数据库操作管理类DBManager.java3.使用连接池 在Eclipse中创建数据读取程序项目16 应用JavaBean实现购物车16.1 项目
13、描述与实现 通过采用连接池的JavaBean连接MySQL数据库,从表中读取商品信息,实现购物车。在数据库db_shopping中,Books表的结构见表5-4,foods表的结构见表5-5.购物车表t_car的结构见表5-6.字段名数据类型长度是否为空约束备注b_idvarchar50否主键编号b_namevarchar50否书名b_prisedouble否价格b_authorvarchar50否作者b_imgvarchar50否图片表 5-4 books表结构项目16 应用JavaBean实现购物车16.1 项目描述与实现项目16 应用JavaBean实现购物车图5-9书籍信息页面book
14、s.jsp图5-10食品信息页面foods.jsp项目16 应用JavaBean实现购物车图5-11添加了若干商品到购物车后的购物页面foods.jsp项目16 应用JavaBean实现购物车实现过程:(1)配置文件server.xml。在web项目JavaWebExample中的目录servers下,找到server.xml,如图5-12所示。然后将下面的代码添加到标签中。图5-12 server.xml项目16 应用JavaBean实现购物车(2)编写数据库操作管理类SqlHelper.java,具体代码见程序5-12.程序5-13:商品接口 Goods.java程序5-13:商品接口 G
15、oods.javapackage chapter5.shoppingCart;/商品public interface Goods String getId();double getPrice();String getName();代码分析:因为在购物车对商品进行的统一处理中,需要读取商品ID、商品价格和商品名称,所以在此接口中声明了三个方法来获取这三种属性,要求所有实现此接口的商品类都要能提供对这三种属性的访问。项目16 应用JavaBean实现购物车程序5-14:书籍类 Book.java程序5-14:书籍类 Book.javapackage chapter5.shoppingCart;pu
16、blic class Book implements Goodsprivate String id;/书籍的ISBN号private String name;/书名private double price;/价格private String author;/作者private String imgName;/图片的名称public String getId()return id;public String getName()return name;public double getPrice()return price;此处省略各属性其余的setter和getter方法项目16 应用JavaB
17、ean实现购物车程序5-15:食品类 Food.java程序5-15:食品类 Food.javapackage chapter5.shoppingCart;public class Food implements Goodsprivate String id;/食品idprivate String name;/食品名称private double price;/食品价格private String imgName;/图片的名称public String getId()return id;public String getName()return name;public double getPr
18、ice()return price;此处省略各属性其余的setter和getter方法项目16 应用JavaBean实现购物车本例所在的项目的目录结构如图5-13所示,其中蓝色方框内的部分为本例所涉及的内容。图5-13本例项目结构图小结 本章主要介绍了JavaBean的使用,重点介绍了JavaBean的程序的编写,JSP中使用JavaBean的动作指令的语法和用法和编写了一个封装数据库操作的JavaBean并运行测试。通过本章的学习,读者可以了解JavaBean特点,掌握在JSP中JavaBean的使用。通过实现连接池优化数据库连接案例,介绍了数据库连接池原理及配置方法。利用JavaBean和
19、数据库连接池实现购物车等。习题一、填空题 1.在 Jsp中 引 入 使 用 JavaBean的 标 签 是 _,其 中 id 的 用 途 是_。2.JavaBean的作用域有page、request、_和application。3.一个Bean由两部分组成,分别是_和_。二、选择题 1.在 JSP 中调用 JavaBean 时不会用到的标记是:()。(A)(B)(C)(D)2()范围将使 Bean一直保留到其到期或被删除为止。(A)page(B)session(C)application(D)request 3()用于获取 Bean的属性的值 (A)setProperty(B)setValue(C)getProperty(D)getValue 4()是一种可以在一个或多个应用程序中重复使用的组件?(A)jsp页面(B)JavaMail(C)JavaBean(D)Servlet 习题三、程序题 1实现一个取系统时间的Bean,利用该Bean在JSP页面中显示当前时间,时间每两秒钟发生一次变化。四、简答题 1.什么是数据库连接池技术?2.Tomcat下如何配置连接池?