




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第十一讲第十一讲 JSP10课时课时(450分钟分钟)本课目标本课目标 理解电子书城的基本设计思想理解电子书城的基本设计思想 熟悉系统需求分析、系统功能模块设计、系统界面设计、熟悉系统需求分析、系统功能模块设计、系统界面设计、系统主要流程设计、数据库设计和详细设计系统主要流程设计、数据库设计和详细设计 知识知识 理解电子书城的基本设计思想理解电子书城的基本设计思想 结合其他相关课程中学习到的软件开发生命周期的相关内结合其他相关课程中学习到的软件开发生命周期的相关内容,进一步明确本书的学习目标。容,进一步明确本书的学习目标。 技能技能u1.电子书城总体设计 u2.系统数据库设计 u3.系统基本框
2、架u4.各功能模块的设计与实现 u5.部署和发布系统 主要内容主要内容网上书店也是JSP技术在电子商务上的应用,用户可以通过浏览器访问系统、订购图书,对系统的管理也是通过浏览器来完成的。 1、系统功能及模块 l 用户注册:用户在网上书店订购图书前,必须注册用户。 l 网上购物:注册用户可以查看书店中有哪些图书,并确定订购哪些图书,可以反复订购。l 查看以前用户订单:注册用户登录系统后,可以查看、修改用户信息,也可以查看以前在网上书店订购的图书。1、网上书店总体设计、网上书店总体设计l 系统管理与维护:这是系统管理员的工作,要求能够添加、修改、删除图书等。系统功能模块如下图所示: 系统功能模块系
3、统功能模块1、网上书店总体设计、网上书店总体设计 2、系统实现方案 本系统采用B/S(浏览器/服务器)数据库应用体系结构。整个系统采用JSP+JavaBean模式,其中,JavaBean主要用来封装连接数据库、执行SQL语句等功能。 JSP容器(服务器)则采用Tomcat 5.0。后台数据库管理系统则采用SQL Server 2000。 1、网上书店总体设计、网上书店总体设计1、数据表分析 分析功能要求,本系统后台数据库设计4个表。2、系统数据库设计、系统数据库设计2、系统数据库设计、系统数据库设计接下来创建数据库和数据表。数据库名为bookshop。 2、系统数据库设计、系统数据库设计网上书
4、店的基本结构如下所示: 系统基本结构图系统基本结构图3、系统基本框架、系统基本框架系统程序目录结构图系统程序目录结构图3、系统基本框架、系统基本框架1、公共模块设计公共模块中一共有4个JSP文件和一个CSS文件:“common.jsp”、“check.jsp”、“header.jsp”、“footer.jsp”和“style.css”。其中,“style.css”文件与第10章中相同文件类似,不作介绍,下面介绍其他4个文件。lcommon.jspl“common.jsp”文件包含其他JSP文件中需要导入的Java类和包以及系统各页面要使用的日期。4、各功能模块的设计与实现、各功能模块的设计与实
5、现l程序除了将常用的Java包和类包含进来外,还将自定义包bookshop包含进来,这个包中有3个JavaBean程序:DBConnectionManager、DBSQLManager和Book,后面将会详细介绍这3个JavaBean程序。l值得注意的是,程序定义了两个String类型变量:dateString和_dateString,前者是表示当前系统日期,后者表示当前系统日期时间,这两个变量将在网上书店的其他JSP文件中使用。lcheck.jspl用来判断系统用户是否登录,防止非法用户登录到系统对系统进行破坏 4、各功能模块的设计与实现、各功能模块的设计与实现代码如下: lheader.j
6、sp和footer.jsp l为了使网上书店的所有页面具有统一的风格,把页面头和尾的代码分开,分别放在单独的JSP文件中。 4、各功能模块的设计与实现、各功能模块的设计与实现在其他页面中使用时,利用include指令将它们包含进来即可。这是开发一个大型、实用的Web应用常用的方法,可以简化页面的重复代码,也为以后的管理和维护工作提供了方便。 header.jsp和footer.jsp就是这样的两个文件。 如果其他JSP文件要使用它们,可利用如下语句将它们包含进来: 4、各功能模块的设计与实现、各功能模块的设计与实现2、网上书店主界面 用户打开网上书店首先见到的页面,通过该页面,用户可以注册用户
7、、登录系统、查看最新消息,系统管理员也可以通过主页面进入到后台管理系统。主界面主界面4、各功能模块的设计与实现、各功能模块的设计与实现3、建立与数据库相关的JavaBean 在上个实例中,使用一个单独的JSP文件“connectdb.jsp”来连接数据库。由于连接数据库的操作在JSP程序中用得较多,并且是一项很消耗系统资源的操作,所以本章实例把这个操作写成JavaBean。DBConnectionManager.java需要注意如下几点: 程序定义了驱动类型名称变量driverName和连接字符串变量url,并给它们赋初值,表示当前连接数据库bookshop。getConnection()方法
8、用于获得数据库连接实例。 4、各功能模块的设计与实现、各功能模块的设计与实现程序的包名为bookshop,其他JavaBean类的包名也是bookshop。使用如下命令编译程序:javac DBConnectionManager.java 得到类文件DBConnectionManager.class 除了连接数据库操作外,在程序中经常会执行指定的SQL语句,所以也可以将这个操作编写为JavaBean。编写JavaBean程序DBSQLManager.java,说明如下: 4、各功能模块的设计与实现、各功能模块的设计与实现程序中要使用类DBConnectionManager,所以要将其包含进来。
9、直接写如下语句:import bookshop.*;在构造方法中,声明了一个DBConnectionManager对象,用来建立与数据库bookshop的连接,并生成Statement对象。方法executeQuery()用来执行SQL查询语句,返回的ResultSet对象,并赋值给成员rs。方法executeUpdate()用来执行INSERT、DELETE和UPDATE语句。 在编译DBSQLManager.java时,要将DBConnectionManager.class文件放置在DBSQLManager.java所在目录的子目录booshop下。 4、各功能模块的设计与实现、各功能模块
10、的设计与实现l4、【用户注册】模块l用户在网上书店订购图书前,需要注册用户。用户注册系统共有两个JSP文件:“register.jsp”和“adduser.jsp” lregister.jsp l定义一个表单以及相关输入框,用于用户输入注册信息。填写完毕,用户单击【注册】按钮,程序会检验用户名和密码的位数是否符合要求以及两次输入的密码是否一致。 ladduser.jsp l提交表单后,进入“adduser.jsp”页面,将用户信息存入数据库。 4、各功能模块的设计与实现、各功能模块的设计与实现5、网上购书子系统session对象的作用是记录每个客户端的访问状态,以便跟踪每个客户端的操作状态。在
11、网上购书子系统中,使用session对象可以跟踪用户购书操作,本实例中要充分利用session对象。lbooklist.jsp 用来列出网上书店的所有书籍供用户购买。lbookdetail.jsp 该页面中显示了书的详细信息,用户还可以设置要购买多少本书。 lBook.java4、各功能模块的设计与实现、各功能模块的设计与实现l booklist.jsp 用来列出网上书店的所有书籍供用户购买。 该页面运行界面如下:4、各功能模块的设计与实现、各功能模块的设计与实现l bookdetail.jsp 该页面中显示了书的详细信息,用户还可以设置要购买多少本书。该页面运行界面如下:4、各功能模块的设计
12、与实现、各功能模块的设计与实现lbuybook.jsp 用于接受“bookdetail.jsp”文件传过来的购书信息,并添加到购物车中。值得注意以下几点: 基于session实现购物车。由于用户可以订购多本图书,反复订购,所以选择了Vector(向量类)作为购物车session变量的类型。 由于购物车中,用户购买书的种类不是惟一的,而是不确定的,所以采取了Vector类,而不是数组。 4、各功能模块的设计与实现、各功能模块的设计与实现lVector(向量类)是java.util包(java中各种常用工具类的类库)提供的一个工具类。它类似于数组,但是具有比数组更强大的功能。Vector类对象所表
13、达的序列中元素的个数是可变的,可以说,Vector类实现了变长数组,随着更多元素加入其中,数组变得更大。在删除一些元素之后,数组变小。lVector类的对象不但可以保存一序列的数据,而且还封装了一些有用的方法来操作和处理这些数据,如addElement()、insertElementAt()、elementAt()、setElementAt()、removeElement()、removeAllElements()等。 4、各功能模块的设计与实现、各功能模块的设计与实现lshopcar.jsp 作用是显示购物车中的内容,实际上它只是从session中取出购物车变量shopcar,如果购物车为空
14、,页面就显示购物车为空的信息。如果购物车不为空,它就取出用户订购的所有书籍,依次显示在页面上。 4、各功能模块的设计与实现、各功能模块的设计与实现l checkout.jsp 作用是将订单写入到数据库中。4、各功能模块的设计与实现、各功能模块的设计与实现l 查看【我的订单】(myshop.jsp)l购买图书后,用户随时可以查看以前的所有订单,单击页面头【我的订单】,就可以打开“myshop.jsp”页面。4、各功能模块的设计与实现、各功能模块的设计与实现orderitem.jsp 如果用户单击“查看”按钮,可以进入“orderitem.jsp” 页面,查看每个订单的各图书信息以及购买数量。4、各功能模块的设计与实现、各功能模块的设计与实现将各JSP文件、JDBC驱动程序jar文件等按照“系统程序目录图”组织本系统程序目录。然后将其拷贝到Tomcat服务器的W
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2025学年高中化学 第1章 第1节 课时1 化学实验安全 过滤与蒸发教学设计 新人教版必修1
- 12 富起来到强起来 第一课时(教学设计)-部编版道德与法治五年级下册
- Unit 2 What's your number Lesson 8(教学设计)-2024-2025学年人教精通版英语四年级上册
- 2023四年级数学下册 6 小数的认识6.5 数的改写教学设计 冀教版
- 7《纳米技术就在我们身边》教学设计-2023-2024学年四年级下册语文统编版
- Unit 1 Making friends B Let's talk(教学设计)-2024-2025学年人教PEP版(2024)英语三年级上册
- 2024年五年级品社下册《南湖游船》教学设计 苏教版
- 三年级品德与社会下册 邻居之间怎样相处(三)教学设计 未来版
- 2023七年级英语下册 Unit 2 What time do you go to school教学设计 (新版)人教新目标版
- 七年级地理上册 2.2海陆的变迁教学设计1 (新版)新人教版
- 人教版高二语文下册《雷雨》原文
- 加工棚验收表
- 某道路运输安全生产业务操作规程
- GB/T 42997-2023家具中挥发性有机化合物释放量标识
- 预制方桩打桩记录
- Moldflow模流分析基础教程 课件全套 第1-11章 注塑成型CAE技术概述-综合模流分析实例
- 市政道路工程工序表格清单
- 肉制品中亚硝酸盐的测定-分光光度法
- 关联业务往来报告表填写要求讲解课件
- 高一年级月考考试质量分析汇报课件
- 老年患者术后谵妄课件
评论
0/150
提交评论