小型网上书店(JSP、Java Bean)

  • 格式:doc
  • 大小:130.13 KB
  • 文档页数:15

软件工程实验报告 设 计 题 目 小型网上书店课程设计(JSP) 学生专业班级 计算机科学与技术**级*班 学生姓名(学号) *** (***) 指 导 教 师 *** 完 成 时 间 ****年 **月 **日 实 习(设计)地点 ******

***** 年 **月 **日 一、开发计划 使用JSP和Java Bean来构建一个简单的网上书店,该系统可以分类录入书籍和相关信息(如名称、页数、出版商、摘要、目录等),包括会员注册,会员登录,会员选书,会员订单提交,订单修改,订单查询。

二、需求分析 1.业务及用户需求分析 网上书店诞生早,规模大。1969年因特网出现不久就有了线上购书。经过20多年的发展,1997年全世界图书销售中,每5本书就有1本是通过网上书店销售的,占全世界图书销售总量的20%以上。它已成为网上贸易主力军之一。 要设计一个实用的网络书店销售管理系统,就必须首先明确应用环境对系统的要求。本系统开发的总体设计目标为开发一个在线系统,实现图书的在线查找、销售,以及在线管理等功能。系统以Windows操作系统为平台,网络联接以TCP/IP协议为基础,使用Web服务器提供信息的浏览和查询,采用流行的B/S三层体系结构。 因此,该系统需主要满足以下几方面需求。

1.用户的管理,含注册、检验及修改等功能。 2.在线图书销售,包括查找、购物车及定单等功能。 3.图书在线管理,如浏览、修改、添加和删除图书等。 2. 技术可行性 1.硬件:计算机的存储量大,运算速度快,外部设备的功能好、效率高、可靠性高,通信设备的能力、质量都满足要求。 2.系统软件:

(1).操作系统Windows XP接口能力强,数据库管理系统的功能足够。 (2).Java语言是一种优秀的编程语言。“The San Francisco product is written almost entirely in java and is believed to be one of the largest java development efforts at this time”从这可以看出Java的发展是很快的。它最大的优点就是与平台无关,在Windows 、Linux以及其它平台上,都可以使用相同的代码。“一次编写,到处运行”的特点,使其在互联网上广泛采用。JSP+JavaBeans几乎可以在所有平台上通行无阻,从一个平台移植到另外一个平台,JSP和JavaBeans甚至不用重新编译。 (3).除此之外Java语言还提供了一些有用的新特性,使得使用Java语言比C++语言更容易写出“无错代码”。

3. 系统服务器配置及开发工具 1.数据库:本系统数据库采用Microsoft Office Access即可满足需求。

2.Web服务器平台:可以选用Windows XP。 3.Web服务器:Tomcat 成为Java Web Server的主流服务器是不可抵挡的趋势,它功能强大,性能稳定,完全可以做商业应用,所以采用Tomcat 6.0。 4.开发工具:Eclipse; 5.软件开发工具箱:J2SDK。 6.程序开发辅助工具:选用Dreamweaver MX2004来开发界面,编写及调试程序在Editplus和JBuilder中进行。 7.系统平台:Windows XP + Tomcat + Microsoft Office Access + Eclipse.

4. 系统数据流程分析 说明:未注册用户通过注册后可以登录到前台进行购书,管理员通过登录可以进入后台进行管理。 1.顶层数据流图如下图

登陆信息

处理结果信息处理结果信息登陆信息

管理员登陆信息定单数据

用户信息注册信息未注册用户

注册用户

管理员

1用户注册+

2用户登陆+

3

购买图书+

4后台处理+

2. 前台购书和后台管理 前台购书: 用户登录后进行书籍浏览和查询,对书籍信息有了一定了解后可根据自己的需求进行购书,购书后将所需书放入购物车,最终确定要购买的图书,提交定单,等待定单的处理结果。 前台购书如下图所示: 确认图书信息图书信息反馈图书信息更新图书信息

[定单数据]

图书信息[用户信息]用户登陆后台处理3.1图书查询3.2购物车处理

3.3定单提交

购物车信息存储图书信息存储

后台管理: 管理员可以登陆到后台,查看相关的定单信息,然后修改定单的信息,主要是审核定单的有效性。 系统第二层数据流图(后台管理)如下图

[处理结果信息][处理结果信息]更新定单数据定单数据[定单数据][管理员登陆信息]

购买图书

管理员注册用户管理员

4.1定单查询

4.2定单处理

定单数据存储

三.系统功能模块实现 1.用户登陆模块 这里介绍用户登陆的程序设计思路,数据库中存放有用户的基本信息,用户在网站中输入相关信息,通过匹配检测,便可以知道数据的有效性.

其中会员登录Java Bean 我们网上书店中的会员信息的库结构如图1所示:

图1 会员信息库 其中memberID 是主键,用于区分不同的会员,新会员注册时只能使用没有被使用的用户代码。

下面是登陆程序流程图如下图2所示:

图2 登陆程序流程图 登陆模块中的主要程序介绍: 1.Java代码: Package BuyBook; import Java.sql.*; public class BuyerBean { private String memberID = null ; //会员ID private String memberName = null; //会员姓名 private String pwd = null; //密码 private int logontimes = -1; //登录的次数 private static String strDBDriver = “sun.jdbc.odbc.JdbcOdbcDriver”; //JDBC驱动 private static String strDBUrl = “jdbc:odbc:bookstore”; //数据源 , private Connection conn =null; //连接 private ResultSet rs = null; //结果集 public BuyerBean (){ //加载JDBC-ODBC驱动 try { Class.forName(strDBDriver ); } //捕获异常 catch(Java.lang.ClassNotFoundException e){ System.err.println(“BuyerBean():” + e.getMessage()); } } //获得登录次数,登录的会员的名字也在该方法调用时获得 public int getLogontimes(){ String strSql = null; try{ conn = DriverManager.getConnection(strDBUrl); Statement stmt = conn.createStatement(); strSql = “Select logonTimes,membername from buyerInfo where memberID = ‘” + memberID + “’ and pwd =’” + pwd + “’”; rs = stmt.executeQuery(strSql); while (rs.next()){ // 登录的次数 logontimes = rs.getInt(“logonTimes”); //会员姓名 memberName = rs.getString(“membername”); } rs.close(); //如果是合法会员则将其登录次数加1 if (logontimes != -1 ) { strSql = “Update buyerInfo set logonTimes = logonTimes +1 where memberID = ‘” + memberID + “’”; stmt.executeUpdate(strSql); } stmt.close(); conn.close(); } //捕获异常 catch(SQLException e){ System.err.println(“BuyerBean.getLogontimes():” + e.getMessage()); } return logontimes ; } //设置memberID属性; public void setMemberID(String ID){ this.memberID = ID; } //设置pwd 属性 public void setPwd(String password){ this.pwd = password; } //获得该会员的真实姓名,必须在取该会员登录的次数之后才能被赋予正确的值 public String getMemberName(){ return memberName; } //测试Bean中的各个方法是否能够正常工作 public static void main(String args[]){ BuyerBean buyer = new BuyerBean(); buyer.setMemberID(“abcd”); buyer.setPwd(“1234”); System.out.println(buyer.getLogontimes()); System.out.println(buyer.getMemberName()); } } 2.会员登录htm与JSP 会员登录要由两个部分来完成,第一个页面用于会员输入其ID和密码。 清单default.htm Copyright © 1999 cuug,liu. CUUG ON LINE BOOK STORE – MEMBER LOGIN CUUG 网上书店 会员登录页