案例2JSP实现网上书店PPT格式课件下载.ppt
《案例2JSP实现网上书店PPT格式课件下载.ppt》由会员分享,可在线阅读,更多相关《案例2JSP实现网上书店PPT格式课件下载.ppt(30页珍藏版)》请在冰豆网上搜索。
查看以前用户订单:
注册用户登录系统后,可注册用户登录系统后,可以查看、修改用户信息,也可以查看以前在网以查看、修改用户信息,也可以查看以前在网上书店订购的图书。
上书店订购的图书。
10/27/20223JavaWeb开发技术开发技术系系统功能模功能模块l系统管理与维护:
系统管理与维护:
这是系统管理员的工作,要这是系统管理员的工作,要求能够添加、修改、删除图书等。
求能够添加、修改、删除图书等。
l系统功能模块如下图所示:
系统功能模块如下图所示:
10/27/20224JavaWeb开发技术开发技术l2、系统实现方案、系统实现方案l本系统采用本系统采用B/S(浏览器(浏览器/服务器)数据库服务器)数据库应用体系结构。
整个系统采用应用体系结构。
整个系统采用JSP+JavaBean模式,其中,模式,其中,JavaBean主要主要用来封装连接数据库、执行用来封装连接数据库、执行SQL语句等功能。
语句等功能。
lJSP容器(服务器)则采用容器(服务器)则采用Tomcat5.0。
后台数据库管理系统则采用后台数据库管理系统则采用SQLServer2000。
10/27/20225JavaWeb开发技术开发技术2.系统数据库设计系统数据库设计l1、数据表分析、数据表分析l分析功能要求,本系统后台数据库设计分析功能要求,本系统后台数据库设计4个表。
个表。
10/27/20226JavaWeb开发技术开发技术10/27/20227JavaWeb开发技术开发技术l接下来创建数据库和数据表。
数据库名为接下来创建数据库和数据表。
数据库名为bookshop。
10/27/20228JavaWeb开发技术开发技术系系统基本基本结构构图3.3.系统基本框架系统基本框架l网上书店的基本结构如下所示:
网上书店的基本结构如下所示:
10/27/20229JavaWeb开发技术开发技术ll系系统程序目程序目录结构构图10/27/202210JavaWeb开发技术开发技术4.4.各功能模块的设计与实现各功能模块的设计与实现l1、公共模块设计、公共模块设计l公共模块中一共有公共模块中一共有4个个JSP文件和一个文件和一个CSS文件:
文件:
“common.jsp”、“check.jsp”、“header.jsp”、“footer.jsp”和和“style.css”。
其中,。
其中,“style.css”文件与文件与第第10章中相同文件类似,不作介绍,下面介绍章中相同文件类似,不作介绍,下面介绍其他其他4个文件。
个文件。
lcommon.jspl“common.jsp”文件包含其他文件包含其他JSP文件中文件中需要导入的需要导入的Java类和包以及系统各页面要使类和包以及系统各页面要使用的日期。
用的日期。
10/27/202211JavaWeb开发技术开发技术l程序除了将常用的程序除了将常用的Java包和类包含进来外,包和类包含进来外,还将自定义包还将自定义包bookshop包含进来,这个包中包含进来,这个包中有有3个个JavaBean程序:
程序:
DBConnectionManager、DBSQLManager和和Book,本章后面的章节将会详细介绍这,本章后面的章节将会详细介绍这3个个JavaBean程序。
程序。
10/27/202212JavaWeb开发技术开发技术l值得注意的是,程序定义了两个值得注意的是,程序定义了两个String类类型变量:
型变量:
dateString和和_dateString,前者是,前者是表示当前系统日期,后者表示当前系统日期时表示当前系统日期,后者表示当前系统日期时间,这两个变量将在网上书店的其他间,这两个变量将在网上书店的其他JSP文件文件中使用。
中使用。
lcheck.jspl用来判断系统用户是否登录,防止非法用用来判断系统用户是否登录,防止非法用户登录到系统对系统进行破坏。
户登录到系统对系统进行破坏。
10/27/202213JavaWeb开发技术开发技术l代码如下:
代码如下:
l10/27/202214JavaWeb开发技术开发技术lheader.jsp和和footer.jspl为了使网上书店的所有页面具有统一的风为了使网上书店的所有页面具有统一的风格,把页面头和尾的代码分开,分别放在单独格,把页面头和尾的代码分开,分别放在单独的的JSP文件中。
文件中。
l在其他页面中使用时,利用在其他页面中使用时,利用include指令将指令将它们包含进来即可。
这是开发一个大型、实用它们包含进来即可。
这是开发一个大型、实用的的Web应用常用的方法,可以简化页面的重复应用常用的方法,可以简化页面的重复代码,也为以后的管理和维护工作提供了方便。
代码,也为以后的管理和维护工作提供了方便。
10/27/202215JavaWeb开发技术开发技术lheader.jsp和和footer.jsp就是这样的两个文就是这样的两个文件。
件。
l如果其他如果其他JSP文件要使用它们,可利用如文件要使用它们,可利用如下语句将它们包含进来:
下语句将它们包含进来:
ll10/27/202216JavaWeb开发技术开发技术主界面主界面2、网上书店主界面、网上书店主界面l用户打开网上书用户打开网上书店首先见到的页面,店首先见到的页面,通过该页面,用户可通过该页面,用户可以注册用户、登录系以注册用户、登录系统、查看最新消息,统、查看最新消息,系统管理员也可以通系统管理员也可以通过主页面进入到后台过主页面进入到后台管理系统。
程序清单管理系统。
程序清单见书。
见书。
10/27/202217JavaWeb开发技术开发技术l3、建立与数据库相关的、建立与数据库相关的JavaBeanl在案例在案例1中,使用一个单独的中,使用一个单独的JSP文件文件“connectdb.jsp”来连接数据库。
由于连接来连接数据库。
由于连接数据库的操作在数据库的操作在JSP程序中用得较多,并且是程序中用得较多,并且是一项很消耗系统资源的操作,所以本章实例把一项很消耗系统资源的操作,所以本章实例把这个操作写成这个操作写成JavaBean。
lDBConnectionManager.java程序清单见程序清单见书。
需要注意如下几点:
书。
程序定义了驱动类型名称变量程序定义了驱动类型名称变量driverName和和连接字符串变量连接字符串变量url,并给它们赋初值,表示,并给它们赋初值,表示当前连接数据库当前连接数据库bookshop。
getConnection()方法用于获得数据库连接实例。
方法用于获得数据库连接实例。
10/27/202218JavaWeb开发技术开发技术程序的包名为程序的包名为bookshop,本章其他,本章其他JavaBean类的包名也是类的包名也是bookshop。
使用如下命令编译程序:
javacDBConnectionManager.java得到类文件得到类文件DBConnectionManager.classl除了连接数据库操作外,在程序中经常会执除了连接数据库操作外,在程序中经常会执行指定的行指定的SQL语句,所以也可以将这个操作语句,所以也可以将这个操作编写为编写为JavaBean。
10/27/202219JavaWeb开发技术开发技术l编写编写JavaBean程序程序DBSQLManager.java,程序清单见书,说明如下:
程序清单见书,说明如下:
程序中要使用类程序中要使用类DBConnectionManager,所以要将其包含进来。
直接写如下语句:
,所以要将其包含进来。
importbookshop.*;
10/27/202220JavaWeb开发技术开发技术在构造方法中,声明了一个在构造方法中,声明了一个DBConnectionManager对象,用来建立与数对象,用来建立与数据库据库bookshop的连接,并生成的连接,并生成Statement对象。
对象。
方法方法executeQuery()用来执行用来执行SQL查询语句,查询语句,返回的返回的ResultSet对象,并赋值给成员对象,并赋值给成员rs。
方法。
方法executeUpdate()用来执行用来执行INSERT、DELETE和和UPDATE语句。
语句。
在编译在编译DBSQLManager.java时,要将时,要将DBConnectionManager.class文件放置在文件放置在DBSQLManager.java所在子目录所在子目录bookshop下。
下。
10/27/202221JavaWeb开发技术开发技术l4、【用户注册】模块、【用户注册】模块l用户在网上书店订购图书前,需要注册用用户在网上书店订购图书前,需要注册用户。
用户注册系统共有两个户。
用户注册系统共有两个JSP文件:
“register.jsp”和和“adduser.jsp”lregister.jspl定义一个表单以及相关输入框,用于用户定义一个表单以及相关输入框,用于用户输入注册信息。
填写完毕,用户单击【注册】输入注册信息。
填写完毕,用户单击【注册】按钮,程序会检验用户名和密码的位数是否符按钮,程序会检验用户名和密码的位数是否符合要求以及两次输入的密码是否一致。
合要求以及两次输入的密码是否一致。
ladduser.jspl提交表单后,进入提交表单后,进入“adduser.jsp”页面,页面,将用户信息存入数据库。
将用户信息存入数据库。
10/27/202222JavaWeb开发技术开发技术l5、网上购书子系统、网上购书子系统lsession对象的作用是记录每个客户端的对象的作用是记录每个客户端的访问状态,以便跟踪每个客户端的操作状态。
访问状态,以便跟踪每个客户端的操作状态。
在网上购书子系统中,使用在网上购书子系统中,使用session对象可以对象可以跟踪用户购书操作,本实例中要充分利用跟踪用户购书操作,本实例中要充分利用session对象。
10/27/202223JavaWeb开发技术开发技术lbooklist.jspl用来列出网上书店的所有书籍供用户购买。
用来列出网上书店的所有书籍供用户购买。
lbookdetail.jspl该页面中显示了书的详细信息,用户还可该页面中显示了书的详细信息,用户还可以设置要购买多少本书。
以设置要购买多少本书。
lBook.javal见程序清单见程序清单-。
10/27/202224JavaWeb开发技术开发技术lbuybook.jspl用于接受用于接受“bookdetail.jsp”文件传过来文件传过来的购书信息,并添加到购物车中。
程序清单见的购书信息,并添加到购物车中。
程序清单见书,值得注意以下几点:
书,值得注意以下几点:
基于基于session实现购物车。
实现购物车。
由于用户可以订购多本图书,反复订购,所以由于用户可以订购多本图书,反复订购,所以选择了选择了Vector(向量类)作为