JS课程设计报告.docx

上传人:b****7 文档编号:9143434 上传时间:2023-02-03 格式:DOCX 页数:11 大小:19.51KB
下载 相关 举报
JS课程设计报告.docx_第1页
第1页 / 共11页
JS课程设计报告.docx_第2页
第2页 / 共11页
JS课程设计报告.docx_第3页
第3页 / 共11页
JS课程设计报告.docx_第4页
第4页 / 共11页
JS课程设计报告.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

JS课程设计报告.docx

《JS课程设计报告.docx》由会员分享,可在线阅读,更多相关《JS课程设计报告.docx(11页珍藏版)》请在冰豆网上搜索。

JS课程设计报告.docx

JS课程设计报告

黔南民族师范学院

计算机科学系

《JSP程序设计》课程设计报告

题目:

模拟购物车

专业:

信息管理与信息系统

班级:

姓名:

学号:

同组人员:

指导老师:

设计时间:

2015年6月22日~2015年7月7日

《JSP程序设计》课程设计报告书1

1.课程设计计划3

2.系统需求分析与功能设计3

3.总体设计4

4.数据库设计5

5.程序模块设计6

6.技术难点与分析7

7.系统测试8

8.心得体会9

9.参考文献10

1.课程设计计划

2015年6月24日至2015年6月31日,进行需求分析和功能设计;

2015年7月1日,总体设计;

2015年7月2日至2015年7月4日,数据库设计和程序模块设计;

2015年7月5日至2015年7月7日,系统实施和系统测试。

2.系统需求分析与功能设计

需求分析:

淘宝、京东、苏宁易购等都是知名度很大的电子商务网站,而对于电子商务网站来说一个很重要的组成部分便是网络购物车,要求利用html、jsp、MySQL数据库等知识点,结合相关设计模式、以及软件工程的相关知识,设计一个网络购物车,用于记录不同客户的购物订单,主要功能是记录和操作不同客户的网上购物信息。

功能设计:

1.显示商品展示界面、操作成功(或失败)界面、购物车展示界面等界面;2.商品信息存储在数据库中;3.对商品信息能够进行查询、修改、删除、清空等操作;4.在浏览器中输入访问信息进行访问;6.购物信息分页显示。

简单的数据流图:

3.总体设计

购物车的简单功能有:

添加商品到购物车、查看购物车、删除商品、清空购物车中的商品

4.数据库设计

ER图设计如下:

Cart表

字段名

字段描述

类型

长度

备注

ID

编号

int

11

自动增长

SP_NAME

商品名称

varchar

50

SP_PRICE

商品价格

double

BUY_NUM

买的数量

int

11

COUNT

总价格

varchar

50

Shows表

字段名

字段描述

类型

长度

备注

SP_NO

商品编号

varchar

20

SP_NAME

商品名称

varchar

50

SP_PRICE

商品价格

double

SP_INFO

商品信息

varchar

200

5.程序模块设计

1.数据库连接模块

本系统使用的数据库为MySQL,将数据库的驱动类库安装到系统后就可以编写数据库连接。

<%

//装载MySQL5.5的JDBC驱动

Class.forName().newInstance();

//建立数据库连接

Stringurl=;

Connectionconn=DriverManager.getConnection(url);

//建立一个Statement对象,用于执行SQL语句

Statementstat=conn.createStatement();

//执行查询并得到查询结果

Stringsql="select*fromshows";

ResultSetrs=stat.executeQuery(sql);

%>

2.商品在线购物模块

提供商品的信息,可以选择加入购物车(index.jsp)

在线购物


商品摘要

在线购买

<%

Stringbm,name,price,info,img;

//将查询结果集中的记录输出到页面上

while(rs.next()){

//从当前记录中读取各字段的值

//img=rs.get("SP_PIC").trim();

bm=rs.getString("SP_NO").trim();

name=rs.getString("SP_NAME").trim();

price=rs.getString("SP_PRICE").trim();

info=rs.getString("SP_INFO").trim();

out.println("");

//out.println("");

out.println("");

out.println("商品编号:

"+bm+"
");

out.println("商品名称:

"+name+"
");

out.println("商品价格:

"+price+"元
");

out.println("商品简介:

"+info+"
");

out.println("");

out.println("

op=add&bm="+bm+"'>放入购物车");

out.println("");

}

3.购物车模块(cart.jsp)

查看购物车里的东西,并且可以删除不喜欢的商品,也可以继续添加商品。

我的购物车


商品名称

商品单价

购买数量

金额

编辑

<%

Stringid,name,price,num,count;

//将查询结果集中的记录输出到页面上

while(rs.next()){

//从当前记录中读取各字段的值

id=rs.getString("ID").trim();

name=rs.getString("SP_NAME").trim();

price=rs.getString("SP_PRICE").trim();

num=rs.getString("BUY_NUM").trim();

count=rs.getString("COUNT").trim();

out.println("");

out.println(""+name+"");

out.println(""+price+"");

out.println("");

out.println(""+count+"");

out.println("

op=del&id="+id+"'>退回商品架");

out.println("");

}

%>


继续购物

op=clear">清空购物车

functionupdateNum(id,num,price){

varurl="buy.jsp?

op=update&id="+id+"&num="+num+"&price="+price;

window.location=url;

}

5.增删查改的功能模块

增删查改的功能嵌套在buy.jsp里,实现对商品的添加、删除、修改、查询的功能。

if(op.equals("add")){

//从商品库中取出所选购商品的数据

Stringbm=request.getParameter("bm");

Stringname=null,price=null;

sql="select*fromshowswhereSP_NO=?

";

pstat=conn.prepareStatement(sql);

pstat.setString(1,bm);

rs=pstat.executeQuery();

if(rs.next()){

name=rs.getString("SP_NAME").trim();

price=rs.getString("SP_PRICE").trim();

}

rs.close();

pstat.close();

//将所选购商品加入到购物车中

sql="insertintocart(SP_NAME,SP_PRICE,BUY_NUM,COUNT)values(?

?

?

?

)";

pstat=conn.prepareStatement(sql);

pstat.setString(1,name);

pstat.setString(2,price);

pstat.setInt(3,1);

pstat.setString(4,price);

pstat.executeUpdate();

pstat.close();

//关闭数据库连接

conn.close();

//重定向到购物车页面

response.sendRedirect("cart.jsp");

}

//更改商品的数量

if(op.equals("update")){

intid=Integer.parseInt(request.getParameter("id"));

intnum=Integer.parseInt(request.getParameter("num"));

doubleprice=Double.parseDouble(request.getParameter("price"));

sql="updatecartsetBUY_NUM=?

COUNT=?

whereID=?

";

pstat=conn.prepareStatement(sql);

pstat.setInt(1,num);

pstat.setString(2,newDouble(price*num).toString());

pstat.setInt(3,id);

pstat.executeUpdate();

pstat.close();

conn.close();

response.sendRedirect("cart.jsp");

}

//将商品退回到商品架(将商品从购物车中删除)

if(op.equals("del")){

intid=Integer.parseInt(request.getParameter("id"));

sql="deletefromcartwhereID=?

";

pstat=conn.prepareStatement(sql);

pstat.setInt(1,id);

pstat.executeUpdate();

pstat.close();

conn.close();

response.sendRedirect("cart.jsp");

}

//清空购物车

if(op.equals("clear")){

sql="deletefromcart";

pstat=conn.prepareStatement(sql);

pstat.executeUpdate();

pstat.close();

conn.close();

response.sendRedirect("cart.jsp");

}

6.技术难点与分析

1.加载数据库驱动类库的时候一直没有成功,后来发现是自己的方法不对,在同学的帮助下最终实现了数据库的连接;

2、数据库表中添加图片的那列在运行的过程中实现不了,总是出现乱码,至今也内解决问题;

3、我做的购物车实现的功能很简单,没有太多复杂的技术手段,就是增删查改的代码比较难一点,其他都基本上是使用Web技术。

其实就是在Web中插入JAVA类,由于没有很多调用关系,就没有单独写成类,直接插入Web的程序中,实现也更简单了。

7.系统测试

主要是进行黑盒测试,系统的功能是否达到要求。

商品在线购物模块测试:

购物车模块测试:

删除功能:

清除购物车中的所有商品:

添加商品的功能:

8.心得体会

顺利的完成本次课程设计给了我很大的信心,让我了解更多的专业知识,购物车采用的是JSP技术编程。

它有着许多的优越性,但也存在一定的不足,这些不足在一定程度上限制了我们的创造力。

只有发现问题面对问题才有可能解决问题,不足和遗憾不会给我打击只会更好的鞭策我前行。

经过这次课程设计和对相关资料的收集,让我清楚的感到随着网络科技的不断发展和网络的广泛应用,使我们的生活离不开它了。

在教育越来越受重视的21世纪,随着商务类型的不断增加和商务管理要求的不断提高,管理方面的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情。

在这样的情况下有一个实用购物车是有其必然性的,例如京东、淘宝、苏宁易购等都有一个不可或缺的购物车。

在这次的课程设计中,我学会了很多,但购物车中也还存在很多的不足,自己的知识有限,尤其在数据库的连接上,出现了很大的问题,还需要努力学习。

9.参考文献

1清宏计算机工作室.JSP编程技巧.机械工业出版社,2000.1

2柏亚军.JSP编程基础及应用实例集锦.人民邮电出版社,2001.7

3Donny.JSP与网站开发编程实战.科学出版社,2001.7

4武延军黄飞跃.精通JSP编程技术.人民邮电出版社,2001.8

5KarlMoss.JavaServlet开发人员指南.清华大学出版社,2002

6StevenHolzner.Java技术内幕.机械工业出版社,2002.1

7陈海山.深入JavaServlet网络编程[.清华大学出版社,2002.2

8PhilHanna.JSP技术大全.机械工业出版社,2002.3

9周影.网络编程语言JSP实例教程.电子工业出版社,2003.6

10蔡剑景楠.JavaWeb应用开发:

J2EE和Tomcat.清华大学出版社.2005

11王国辉牛强.JSP信息系统开发实例精选.机械工业出版社,2005.7

12王国辉王易.JSP数据库系统开发案例精选.人民邮电出版社,2006.5

13赵森.中文SQLServer2005程序设计教程.冶金工业出版社,2006.7

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1