欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOCX文档下载  

    网店课程设计.docx

    • 资源ID:1047286       资源大小:240.71KB        全文页数:28页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    网店课程设计.docx

    摘要伴伴随Intemet0¾蓬勃发展,网络购物中心作为电子商务0¾一种形式正以其高效、低成本0¾优势,逐渐成为新兴的经营理念和模式,人们已经不再满足信息0浏览和公布方式,而是渴望着可以充足享有网络所带来的更多便利。网络购物正适应了当今社会快节奏地生活,使顾客足不出户便可以以便、快捷、轻松地选购自己喜欢的商品。本系统便是尝试用JSP在网络上架构一种动态的电子商务网站,它是在Windows系统下,以MySQL数据库为开发平台,Tomcat网络信息服务作为应用服务器,采用JSP(JavaServerPages)JaVaBean和JDBC等技术开发0网上购物系统。它分前台部分和后台部分,前台部分由顾客使用,重要包括顾客注册,购物车管理,订单管理,个人资料管理等功能;后台部分由管理员使用,重要包括商品管理,处理订单,顾客信息管理,链接信息管理等功能。建立后的网站是一种动态、交互式、具有商品提供、系统管理等功能的电子商务网站。关键字JSP;MySQL;Tomcat;网上购物系统1系统功能概述11.1 系统B¾重要功能11.2 系统日勺构造总图12数据库设计22.1 需求分析22.2 网上商城后台管理系统E-R模型22.2.1 顾客信息实体属性E-R模型22.2.2 商品类别实体ER模型3商品信息实体属性E-R模型42.3 表构造设计43系统各功能模块的详细设计43.1 后台管理员登陆模块43.2 商品管理模块53.2.1 商品列表53.2.2 商品添加73.2.3 商品修改93.2.4 商品搜索11参照文献171系统功能概述1.1系统的(重要功能:(1)前台顾客的注册;(2)后台管理员对顾客的简朴管理;(3)后台管理员对商品类别的管理;(4)后台管理员对商品信息的管理。1.2网上商城后台管理系统构造总图,如下图所示。图Ll系统构造总图2数据库设计2.1 需求分析建立一种完善的网上购物平台,包括前台显示和后台的管理,前台通过可视化的界面显示给顾客,顾客通过可视化0¾操作与数据库进行动态交互。而后台管理员则对前台显示0¾信息进行管理,本系统重要是后台管理的设计,其重要功能如下:(1)注册顾客信息在后台0¾显示;(2)商品类别的管理,重要有类别B添加、修改、删除和列表显示;(3)商品详细信息的管理,重要有商品的添加、修改、删除和列表显示。2.2 网上商城后台管理系统E-R模型顾客信息实体属性E-R模型,如下图所示。图2.1顾客信息实体属性图商品类别实体E-R模型,如下图所示。图2.2商品类别实体图商品信息实体属性E-R模型,如下图所示。图2.3商品信息实体属性图2.5表构造设计表构造是寄存数据的格式,也是呈目前数据库中的样式。下图分别是表2.1顾客表日勺表构造、表2.2商品类别表的表构造以及表2.3商品信息表附表构造。表2.1顾客表的表构造字段名数据类型长度含义约束idint11顾客IDprimarykeyauto_incrementusernamevarchar40顾客名DefaultNULLpasswordvarchar20密码DefaultNULLphoneVarchar20DefaultNULLaddrVarchar255地址DefaultNULLrdatedatetime注册时间DefaultNULL表2.2商品类别表的I表构造字段名数据类型长度含义约束idint11类别IDprimarykeyauto_incrementnamevarchar255类别名DefaultNULLdescrvarchar255类别描述DefaultNULLpidInt11父类别IDDefaultNULLisleafInt11与否子类别DefaultNULLgradeint11级别DefaultNULL备注:字段isleaf,若类别为没有子类别则取值为0,若有子类别取值则为1。表2.3商品信息表附表构造字段名数据类型长度含义约束idint11商品IDprimarykeyauto_incrementnamevarchar255商品名DefaultNULLdescrvarchar255商品描述DefaultNULLnormalpricedouble市场价DefaultNULLmemberpricedouble会员价DefaultNULLpdatedatetime上架时间DefaultNULLCategoryidint11类别IDDefaultNULL3系统各功能模块的详细设计3.1 后台管理员登陆模块该模块是后台管理0¾入口,通过前台提交0登录名和密码,在程序中验证与否能进入后台管理系统。后台管理员登陆界面如下图3.1所示。图3.1后台登陆界面接受表单提交的数据并进行验证,代码如下所示:<%Stringaction=request.getParameterCction");if(action!=null&&action.e<uals("login")Stringusername=request.getParameter("username");Stringpassword=request.getParameter("password");if(!username.equals("admin")!password.equals("admin")out.println("usernameorpasswordnotcorrect!',);return;session.setAttribute("admin","admin");response.sendRedirect("index.jsp");)%>3.2 商品管理模块商品列表证登入到后台管理时,通过点击管理主界面左侧产品管理下0产品列表的J超链接,则在主界面右侧区域显示商品详细信息。产品列表B界面如下图3.2所示。J. wthttraa * lW。士 出。ocalhost800MyShoppigadmirifxle×.jsp 3DSVl -moBS HM¾-. MSN Q HfltS下M(Sa四二0 订if分 f,O<tS SB SA*上方格低,住抵福好1800.02014-06-19 19:8:52W修改上传2Bfi!车需好用0刀201406 19 19:19:171&<上传图3.2产品列表界面部分重要程序代码如下:<%finalintPAGE_SIZE=5;每页显示多少条记录finalintPAGES_PER_TIME=10;/每次显示多少个页码链接intpageNo=1;StringStrPageNo=request.getParameter("pageNo");if(StrPageNo!=null&&!StrPageNo.trim().equals("")try(pageNo=IntegenparseInt(StrPageNo);catch(NumberFormatExceptione)pageNo=1;)if(pageNo<=O)pageNo=1;%><%1.ist<Product>products=newArrayList<Product>();inttotalRecords=ProductManager.getInstance().getProducts(products,pageNo,PAGE_SIZE,true);inttotalPages=(totalRecords+PAGE.SIZE-1)/PAGE_SIZE;if(pageNo>totalPages)pageNo=totalPages;%>publicintgetProducts(List<Product>products,intpageNojntpageSize,booleanlazy)inttotalRecords=-1;Connectionconn=DB.gefCo();Stringsql=""if(lazy)sql="select*fromproductorderbypdateasc;)sql+=limit"+(pageNo-l)*pageSize+","+pageSize;ResultSetrs=D.executeQuery(coxr,sql);StatementStmtCount=DB.ge/S"”Corm);ResultSetrsCount=DB.exec用。StmtCount,"selectcount(*)fromproduct");try(rsCount.next();totalRecords=rsCount.getInt(l);Productp=null;while(rs.next()p=newProduct();p.setld(rs.getlnt("id);p.setName(rs.getString("name);p.setDescr(rs.getString("descr");p.setNormalPrice(rs.getDouble(',normalprice");p.setMemberPrice(rs.getDouble("memberprice");p.setPdate(rs.getTimestamp(,'pdateH);p.setCategoryId(rs.getInt("categoryid");products.add(p);I)catch(SQLExceptione)e.printStackTrace();)returntotalRecords;)商品添加通过点击产品管理模块下0¾产品添加超链接,将出现添加商品0页面,管理员完善产品的所有信息后,点击提交按钮提交表单中B数据,后台程序代码将产品信息写入数据库。产品添加的界面如图3.3所示。J用户宜理 凸类别宜悭 g产品省理卢品列去产品添加 F1蛛 凸订单管迎 q统计分析 凸百翦省理产品的:I市场价格:L会员价格:I斫属奥别n% *产品碗:AV囹囤四产晶土分内8夷女I图3.3添加产品界面部分程序代码:<%request.setCharacterEncoding("GBK");intCategoryId=-1;StringStrCategoryId=request.getParameter("categoryId");if(strCategoryId!=null&&!StrCategoryId.trim().equals(1M,)CategoryId=IntegenparseInt(StrCategoryId);)Stringaction=request.getParameter("action");if(action!=null&&action.trim().equals("add")Stringname=request.getParameter("namen);DoublenormalPrice=Double.parseDouble(request.getParameter("normalPrice");doublememberPrice=Double.parseDouble(request.getParameter("memberPrice");Stringdescr=request.getParameter(',descr");Productp=newProduct();p.setld(-l);p.setName(name);p.setNormaIPrice(normalPrice);P-SetMemberPrice(InemberPrice);p.setDescr(descr);P-SetCategoryId(CategoryId);p.setPdate(newTimestamp(System.cu11entTimeMillis();ProductManager.getInstance().addProduct(p);%>publicbooleanaddProduct(Productp)Connectionconn=null;PreparedStatementpstnt=null;conn=DB.geCo();Stringsql="”;if(p.getld()=-l)sql="insertintoproductVaIUeS(null?)"try(pstmt=DB.getPstmt(conn,sql);pstmt.setString(1,p.getName();pstmt.setString(2,p.getDescr();pstmt.setDouble(3,p.getNormalPrice();pstmt.setDouble(4,p.getMemberPrice();pstmt.setTimestamp(5,p.getPdate();pstmt.setlnt(6,p.getCategory(d();pstmt.executeUpdate();returntrue;)catch(SQLExceptione)e.printStackTrace();returnfalse;)finallyDB."OSe(PStmt);DB.cose(conn);商品修改点击商品列表中处理项中0¾修改链接,则出现修改对应商品0信息,当填写好修改之后0¾信息后,点击提交按钮,对商品信息进行更新操作。修改商品信息的运行界面如图3.4所示。R±W*B三三KXJ_A:(Q)苗LB。localho$t:8080/MyShopping/AdmirVindex.j%p黑3。EJ.QKXmSamoBaSRMft?.MSN113ea三FflGK央栏0«««089S÷WV-AM泳师产品qRPis用户利褰q典别慢q产鹿 &89廉 声鼻宗加 户出9iTli?J线首分析61/212>>|IMDl-M<Mtt«M*上点受*MVA6iR<他好网I20Mglg19:20:14Wt.WW除泳上传5取0.8201406-2612:20:16(8堂7与管W功第图好箝海做I1900.02014X>6-2621:33:54电aIi娥修改上传8javaA三三fi易于殖第32.0201432715:37:43m归改上传:I9X18.020l4g2715:40:09环mttfttIOTi2律律方M:W用Q名-谊剔-ISAlr-/!户Ba林:l"*In金员象脩:fF-所艮别1-««*FMit:AVI*2IV"Flfc图3.4修改商品信息界面接受表单数据代码如下:<%request.setCharacterEncoding("GBK");intid=Integer.parseInt(request.getParameter("id");Productp=ProductManager.getInsUnce().loadById(id);Stringaction=requesi.gelParameter("aclion");if(action!=null&&action.trim().equals("add")Stringname=request.getParameter("name");doublenormalPrice=Double.parseDouble(request.getParameter("normalPrice");doublememberPrice=Double.parseDouble(request.getParameter("memberPrice");intCategoryId=Integer.parseInt(request.getParameter("categor),Id");Stringdescr=request.getParameter("descr");p.setName(name);p.setNormalPrice(normalPrice);p.setMemberPrice(memberPrice);p.setDescr(descr);P-SetCategoryId(CategoryId);p.setPdate(newTimestamp(System.CurrentTimeMillisO);ProductManager.getInstance().updateProduct(p);out.rinlln("更新成功!");%><scripttype=,textjavascript"><!-parent.main.location.reload();/-><script>将更新的商品信息写入数据库的UPDateProdUCt措施:publicbleanUpdateProduct(Productp)Connectionconn=null;PreparedStatementpstmt=null;try(conn=DB.geCb""();Stringsql="updateproductsetname=?,descr=?,normalprice=?,memberprice=?,pdate=7,categoryid=?whereid=',+p.getld();pstmt=DB.getPstmt(conn,sql);pstmt.setString(I,p.getName();pstmt.setString(2.p.getDescr();pstmt.setDouble(3,p.getNormalPrice();pstmt.setDouble(4,p.getMemberPrice();pstmt.setTimestamp(5,p.getPdate();pstmt.setlnt(6,p.getCategoryId();pstmt.executeUpdate();returntrue;catch(SQLExceptione)e.printStackTrace();returnfalse;)finallyDBdQse(PStmt);DB.c/oSe(COnn);商品搜索商品的搜索分为简朴搜索和复杂搜索,简朴搜索通过关键字搜索,复杂搜索可以通过多种商品时多种信息进行搜索。商品搜索界面如图3.5所示。用用恢 。9lWiV g raw产品多雄 iW产品解 Ol<图3.5商品搜索界面.1简朴搜索搜索的搜索框中输入关键字“笔”之后,点击提交按钮。简朴搜索界面如图3.6所示。S用r型用户列表 。二别得 g K a* 那- rM*产品季加产翱蝶 。订雷瑁 g娘W分析 a ”"谡Aa5价脩fU1.10.82014-06-26 12:20:16ts«6ra餐侪用1.21.0201406.19 19:20:14产S"«第停方式:WH - was -性刷-iam - 吃曲CAIO mM图3.6简朴搜索界面接受表单数据:<%Stringkeyword=newString(request.getParameter("keyword").getBytes("8859_l"),GBK);finalintPAGE_SIZE=2;每页显示多少条记录finalintPAGES_PERJnME=IO;/每次显示多少个页码链接intpageNo=1;StringStrPageNo=request.getParameter(,'pageNo");if(StrPageNo!=null&&!strPageNo.trim().equals("")try(pageNo=IntegeEparseInt(StrPageNo);catch(NumberFormatExceptione)pageNo=1;if(pageNo<=0)pageNo=1;%><%1.ist<Product>products=newArrayList<Product>();inttotalRecords=ProductManager.getInstance().getProducts(products,pageNo,PAGE_SIZE,keyword);inttotalPages=(totalRecords+PAGE_SIZE-1)/PAGE_SIZE;if(pageNo>totalPages)pageNo=totalPages;%>实现搜索功能H勺getProducls措施”:publicintgetProducts(List<Product>products,intpageNo,intpageSize,StringqueryStr)inttotalRecords=-1;Connectionconn=DB.getConn()Statementstmt=DB.ge/S用什(Corm);Stringsql“,sql="selectp.idproductid,p.namepname,p.descrpdescr,p.normalprice,+"p.memberprice,p.pdate,.categoryid,"+',c.idcategoryid,c.namecname,c.descrcdescr,c.pid,c.grade"+"fromproductpjoincategorycon(p.categoryid=c.id)"+queryStr÷"orderbyp.pdatedesc"sql+="limit"+(pageNo-1)*pageSize+',"+pageSize;ResuItSetrs=DB.executeQuery(stsql);StatementStmtCount=DB.getStmt(conn)ResultSetrsCount=DB.exec/eQefy(stmtCount,"selectcount(*)fromproduct"+queryStr.replaceAlICpW.'1,|,);try(rsCount.next();totalRecords=rsCount.getInt(l);if(rs=null)returnO;while(rs.next()Productp=null;p=newProduct();p.setld(rs.getlnt(',productid");p.setName(rs.getString("pname");p.setDescr(rs.getString("pdescr");p.setNormalPrice(rs.getDouble(,normalprice);p.setMemberPrice(rs.getDouble("memberprice,');p.setPdate(rs.getTimestamp("pdate");p-setCategoryldCrs.getlntC'categoryid'1);products.add(p);)catch(SQLExceptione)e.printStackTrace();)finally(DB.cave(rsCount);DB.cOSe(StmtCoUnt);DB.cose(stmt);DB.cose(rs);DBdOSe(COrm);)returntotalRecords;.2复杂搜索复杂搜索0会员价中输入价格区间为10002023时,点击提交按钮进行搜索。复杂搜索界面如图3.7所示。工"山5>11I图3.7复杂搜索界面实现搜索功能的措施山:publicintfind(List<Product>products,intpageNo,intpageSize,ProductSearchFonnBeanbean)StringqueryStr="where1=1"if(bean.getCategoryId()!=-1)queryStr+="andp.categoryid="+bean.getCategoryId();if(bean.getName()!=null&&!bean.getName().trim().equals(H")queryStr+="andp.namelike'%"+bean.geName()+,%,"if(bean.getLowNormalPrice()!=0.0)queryStr+="andp.normalprice>="+bean.getLowNormalPrice();if(bean.getHighNormalPrice()!=0.0)queryStr+=,andp.normalprice<=,'+bean.getHighNonalPrice();if(bean.getLowMemberPrice()!=0.0)queryStr+=,'andp.memberprice>=>,+bean.getLowMemberPrice();)if(bean.getHighMemberPrice()I=0.0)(queryStr+="andp.memberprice<="+bean.getHighMemberPrice();)if(bean.getStartDate()!=null&&!bean.getStartDate().trim().equaIs("")queryStr+=,'andp.pclate>="'+bean.getStartDate()+”00:00:00"')if(bean.getEndDate()!=null&&!bean.getEndDate().trim().equals(,H)queryStr+="andp.pdate<=,"+bean.getEndDate()+”00:00:00",;)returndao.getProducts(products,pageNo,pageSize,queryStr);)publicintgetProducts(List<Product>products,intpageNo,intpageSize,StringqueryStr)inttotalRecords=-1;Connectionconn=DB.getConn()Statementstmt=DB.getStmt(conn);Stringsql=",;sql=selectp.idproductid,p.namepname,p.descrpdescr,p.normalprice,+"p.memberprice,p.pdate,.categoryid,"+',c.idcategoryid,c.namecname,c.descrcdescr,c.pid,c.grade,'+"fromproductpjoincategorycon(p.categoryid=c.id)"+queryStr+"orderbyp.pdatedesc"sql+=,'limit"+(pageNo-1)*pageSize÷',"+pageSize;ResultSetrs=DB.executeQuery(stmt,sql);StatementStmtCount=DB.getStnt(conn)ResultSetrsCount=DB.exe"eQ"ey(stmtCount,"selectcount(*)fromproduct"+queryStr.replaceAll("p.",);try(rsCount.next();totalRecords=rsCount.getInt(l);if(rs=null)returnO;while(rs.next()Productp=null;p=newProduct();p.setld(rs.getlnt("productid");p.setName(rs.getString("pname");p.setDescr(rs.getString(,pdescr");p.setNormalPrice(rs.getDouble(',normaIprice");p.setMemberPrice(rs.getDouble(,memberprice");p.setPdate(rs.getTimestamp("pdate");p.setCategoryId(rs.getInt("categoryid");products.add(p);)catch(SQLExceptione)e.printStackTrace();finallyDB.cose(rsCount);DBdose(StmtCount);DB.cose(stmt);DB.cose(rs);DB.cose(conn);returntotalRecords;参照文献1贾素玲,王强.JSP应用开发技术.北京.清华大学出版社.20232李楠.JSP工程应用与项目实践.北京.机械工业出版社.2023李俊明.MySQL数据库开发完全手册.北京.人民邮电出版社.20234孙卫琴.Tomcat与JavaWeb开发技术详解(第2版).北京.电子工业出版社.20235张志锋,朱颖东.JSPWeb技术整合应用与项目实践.北京.清华大学出版社.2023

    注意事项

    本文(网店课程设计.docx)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开