电子商务网站课程设计报告范例
电子商务 课程设计报告
项目名称: 电子商务网站 项目组长: 班级: 项目组员: ____________
1. 正文 (1) 引言
①. 程序设计的背景
21世纪的重要特征是数字化、网络化和信息化。自从上个世界90年代以后,以因特网为代表的计算机网络得到了飞速的发展,已从最初的教育科研网络发展成为商业网络,并已成为仅次于全球电话网的世界第二大网络。很多人认为现在已经是互联网的时代,这是因为互联网正在并继续改变着我们的工作和生活的各个方面,加速了全球信息革命的进程。现在人们的生活、工作、学习和交往都已经离不开因特网,互联网成为全球通信与贸易的重要工具。网上购物系统正在成为人们日益信赖的购物平台,其以优越的方便快捷性、实用性、可获得性等特性获得越来越多人的青睐,网上购物逐渐成为很多人购物的主要途径。另外,随着计算机身份认证技术、数字签名、数据库安全、数字水印、信息隐藏、入侵检测、防火墙等网络安全技术的发展使得网上购物的环境越来越安全,大型网站的合理构建,政府机构完备的法律制度都极大的保证了网上购物的安全性,提高了顾客的信任度,使得网络购物更加普及。作为当代的大学生,网络更是贯穿于我们的生活,加上年轻人乐于尝试新生事物的心理趋向也让我们对于网上购物有了更多了解并参与其中。基于对网络购物环境的理解,结合自己的网络购物的体会,本小组成员进行了此次课程设计,基本上实现了简单的基于Java平台的JSP电子商务网站设计(电脑购物B2C模式的电子商务网站)。 ②. 程序设计的需求分析
本电子商务网站总体基于Java,利用服务器端动态网页开发的JSP技术,辅以客户端动态网页开发的Javascript技术,主要设计实现以下功能: 1.前台销售,包括以下内容: 1)用户注册:
显示注册界面,通过Javascript技术判断用户填写的注册信息是否规范,用户名是否已经存在、填写的密码是否一致、Email是否为正确格式等等。用户确认所填注册信息并通过验证后,将注册信息添加到数据库中的userInfo表中。 2)用户登录
用户输入用户名和密码后,检验所输入的用户名和密码是否与数据库中的用户名和密码一致,如果一致,登录成功进入首页,否则,重新登录。 3)商品搜索
用户输入相关的商品信息后,能在数据库中查找相应的商品信息,并进行显示。 4)商品分页显示
点击商品分类或搜索商品后,对结果进行分页显示。 5)商品详情显示
点击商品的链接,可以显示商品的详细信息。 6)用户管理个人信息
用户登录后可以查看个人的基本信息和购买记录。 7)用户查看订单
用户可以查看自己当前订单和历史订单。 8)商品订购与购物车
登录用户(未登录会提示登录)查看商品时,会显示商品的详细信息,单击“加入购物车”按钮,确定后就将该商品放入用户的购物车,完成该商品的选购。另外,用户可以查看、修改或者清空购物车的内容。 9)结算与下订单
登录用户(未登录会提示登录)可以在自己的信息中心查看自己的购物车,并决定是否下单,或者修改,删除购物车的内容。 ③. 开发环境
操作系统: Windows 7;
开发语言: Java,JavaScript,jsp,html 数据库:SQL Server IDE:Eclipse,Dreamweaver; (2) 数据库设计
①. ER图
②. 详细的表结构:字段名、字段类型、字段长度、是否主键、是否允许为空等。
userInfo表
Product表
orders表
orderDetail表
(3) 系统功能设计
①. 系统功能结构:给出整个系统功能模块的层次结构图
②. 各功能模块:介绍每个模块的输入、处理和输出
1.用户管理模块 1.1用户登录
输入:用户名,密码。
处理:根据关键字在数据库userInfo表内查询是否有相应记录,登录成功跳转至首页,否则重新跳回登录界面。 1.2 用户注册
输入:用户基本信息,包括用户名,密码,邮箱地址,联系地址,所在城市等。
处理:首先在客户端验证应该填写的信息是否为空,两次密码是否一致,邮箱地址格式是否正确,用户名是否已注册,满足各项要求后提交注册处理页面,将用户信息添加到数据库内的userInfo表中。 2.商品模块 2.1商品销售-展示
输入:商品的各种信息,价格,商品型号等。
处理:在数据库内根据所输入的关键字,在product表内查找出相应商品数据。 输出:在用户页面显示出相关商品的信息 2.2 商品销售-购买
输入:商品型号,用户名
处理:为用户加入购物车的行为,在数据库orderDetail表内添加一条记录。 2.3商品销售-查询
输入:商品的名字,厂商等。
处理:在数据库内根据输入的关键字,在product表内查找出相应数据。 输出:在用户页面显示出相关的信息。 3.订单模块 3.1填写订单-添加
输入:用户输入订单相关信息,比如:邮件地址,收件人等 处理:在数据库order表内添加一条订单的记录。 3.2填写订单-展示 输入:用户输入用户名
处理:在数据库order表内搜索用户名相同的记录。 输出:在客户端,展现该名用户的订单信息。
③. 数据结构设计:各功能模块中用到的详细数据(结构)
客户
商品
订单
订单详情
(4) 详细设计
①. 列出模块对应的函数。
dolog.jsp
request.setCharacterEncoding(
String sql=
ResultSet rs=db.executeQuery(sql); if(rs.next()!=false) { } else
{out.println(
String userId=rs.getString(
②. 画出整个系统的程序结构图,即函数之间的调用关系图。
③. 说明自己所负责的模块。
④. 介绍所负责模块,包括界面和详细代码。
首页
pageEncoding=
欢迎光临柏树网!
Navigation:
*
* 笔记本
超极本
上网本
*
*
* 平板电脑
* 平板电脑配件
* 台式机
服务器
*
href=http://www.360buy.com/products/670-671-675.html>
*
笔记本配件
*
*
href=http://www.360buy.com/products/670-677-678.html>CPU
主板
显卡
硬盘
内存
机箱
电源
显示器
* href=http://www.360buy.com/products/670-677-679.html>href=http://www.360buy.com/products/670-677-683.html>href=http://www.360buy.com/products/670-677-680.html>href=http://www.360buy.com/products/670-677-687.html>href=http://www.360buy.com/products/670-677-691.html>href=http://www.360buy.com/products/670-677-688.html>
href=http://www.360buy.com/products/670-677-684.html>
href=http://www.360buy.com/products/670-677-682.html>
*
散热器
*
* 声卡/扩展卡
* 装机配件
*
* 鼠标
键盘
*
* 移动硬盘
* U盘
摄像头
外置盒
* href=http://www.360buy.com/products/670-686-695.html>
href=http://www.360buy.com/products/670-686-696.html>
href=http://www.360buy.com/products/670-686-697.html>
href=http://www.360buy.com/products/670-686-698.html>
*
电视盒
*
鼠标垫
插座
*
*
*
href=http://www.360buy.com/products/670-686-1048.html>UPS电源
线缆
*
* 电脑工具
* 电脑清洁
*
* 路由器
网卡
交换机
* href=http://www.360buy.com/products/670-699-702.html>
href=http://www.360buy.com/products/670-699-983.html>
*
网络存储
* 3G上网
*
* 打印机
一体机
投影机
* href=http://www.360buy.com/products/670-716-722.html>
* 投影配件
传真机
复合机
* href=http://www.360buy.com/products/670-716-719.html>href=http://www.360buy.com/products/670-716-723.html>
扫描仪
墨盒
硒鼓
墨粉
色带
* href=http://www.360buy.com/products/670-716-731.html>href=http://www.360buy.com/products/670-716-730.html>href=http://www.360buy.com/products/670-716-732.html>href=http://www.360buy.com/products/670-716-733.html>
*
* 计算器
笔类
纸类
考勤机
保险柜
激光笔
*
* href=http://www.360buy.com/products/670-729-724.html>
*
*
* 办公文具
点钞机
*
* 刻录碟片/附件
* 白板/封装
* 文件管理
* 学生文具
*
* 京东服务
* 电脑软件
request.setCharacterEncoding(
db.getconnection();
String sql=
ResultSet rs=db.executeQuery(sql);
rs.absolute(2);
%>
src=
request.setCharacterEncoding(
int pageSize=6;//页面大小
int pageNow=1;//默认显示第一页
int rowCount=0;//该值从数据库中查询,总的记录数
int pageCount=0;//该值是通过pageSize和rowCount,分页数目
//接受用户希望显示的页数(pageNow)
String s_pageNow=request.getParameter(
if(s_pageNow!=null){
//接收到了pageNow
pageNow=Integer.parseInt(s_pageNow);
}
db.getconnection();
//查询得到rowCount,即总记录数
String sql2=
ResultSet rs1=db.executeQuery(sql2);
if(rs1.next()){
rowCount=rs1.getInt(1);
}
//计算pageCount,即分页数目
if(rowCount%pageSize==0){
pageCount=rowCount/pageSize;
}else{
pageCount=rowCount/pageSize+1;
}
//查询出需要显示的记录
String sql1=
rs1=db.executeQuery(sql1);
out.print(
while(rs1.next()){
out.println(
out.println(
out.println(
out.println(
out.println(
class='reduce'>¥
class='price'>¥
out.println(
System.out.println(rs1.getString(
out.println(
out.println(
src='images/favorites.gif' alt='' title='' border='0' class='left_bt' />
out.println(
class='prod_details'>详情
out.println(
}
//上一页
if(pageNow!=1){
out.println(
}
//显示超链接
for(int i=1;i
out.println(
}
//下一页
if(pageNow!=pageCount){
out.println(
}
request.setCharacterEncoding(
String sql3=
ResultSet rs3=null;
rs3=db.executeQuery(sql3);
if(rs3.next())
{
out.print(
do
{
out.println(
out.println(
out.println(
out.println(
out.println(
out.println(
class='reduce'>¥
class='price'>¥
out.println(
out.println(
out.println(
out.println(
body=[ ] fade=[on]'>
out.println(
out.println(
out.println(
out.println(
out.println(
}while(rs3.next());
}
%>
Float total=0f;
int count=0;
String sql4=
ResultSet rs2 =db.executeQuery(sql4);
while(rs2.next())
{
Float price=rs2.getFloat(
int num=rs2.getInt(
total+=price*num;
count+=num;
} %>
件物品
合计:
width=
alt=
MX-VL
alt=
class=
*
*
*
*
*
*
*
class=
pageEncoding=
用户登录
登录名称:
登陆密码:
/>
Copyright 2012-2022
订单
pageEncoding=
购物车