JavaServer Face为Java应用程序的开发提速。
JavaServer Faces(JSF)是一项使用Java技术来快速构建Web应用程序的新技术。JSF通过提供以下特性来加速开发进程:
标准和可扩展的用户界面组件;极易配置的页面导航;用于输入验证的组件;自动化的Bean管理;事件处理;轻松的错误处理,
以及内置的对国际化的支持。
本文介绍如何使用JSF来构建在线比萨(pizza)订购系统。
项目描述
该应用程序被称之为PizzaRia,是一个在线商店,允许用户选择比萨饼并递交选定的比萨饼。PizzaRia与其他在线商店类似,
用户可以浏览菜单,向购物车中添加所选产品并进行结账。
该应用程序的用户界面由5个JSP文件组成,它们是index.jsp, details.jsp, shoppingCart.jsp, checkOut.jsp以及order.jsp 。
每个用户界面的页面包括3个其它页面:header.jsp, menu.jsp和 footer.jsp
用户购物流程:进入商店、查看商品详细信息、购物(放入购物车)、 结账、付款。
![]() |
![]() |
![]() |
![]() |
![]() |
数据库
该程序的数据存储在3张表中:products(产品)、orders(定单)和OrderDetails(订单详细项目)。Products表存储产品信息, 具有4列:ProductId(产品标识), Name(名称), Description(说明)和 Price(价格)。
Orders表中的每一行存储一个单独的订单,其中的信息包括联系人姓名、送货地址以及信用卡细目。Orders表有6列:
OrderId(定单标识), ContactName(联系人姓名), DeliveryAddress(送货地址), CCName(信用卡所属人姓名),
CCNumber(信用卡号码)和 CCExpiryDate(信用卡有效期限)。
每个订单的详细项目被存储在OrderDetails表中。OrderDetails表有4列:OrderId(定单标识), ProductId(产品标识),
Quantity(数量)和 Price(价格)。Orders与OrderDetails表通过OrderID列有一对多的对应关系。请注意,OrderDetails表
在用户下订单的时候就保存相关的价格信息。该价格可能与当前产品价格不同,后者存储在Products表的Price列中。
用于在一个Oracle数据库中创建所需的表的脚本文件pizzaria-oracle.sql存放在pizzaria.zip文件中。
业务对象
以下是在该应用程序中使用的业务对象:
ProductBean