JAVAWEB课程设计实验报告_第1页
JAVAWEB课程设计实验报告_第2页
JAVAWEB课程设计实验报告_第3页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目录第一章概述 2【实验目的】 2【需求分析】 2第二章网上商店结构分析与设计 3【前言】 32.1系统结构图 32.2系统功能分析 4第三章详细设计 43.1数据库设计 43.2 商品模块实现 5模块功能实现和关键代码说明 53.3用户注册/登录模块实现 9331 模块功能实现和关键代码说明 93.4 购物车模块实现 12模块功能实现和关键代码说明 123.5结算功能模块 16第四章总结 17【技术总结】 17【心得体会】 18第一章概述【实验目的】1. 掌握java-web网站设计的全过程;2. 进一步熟练Servlet技术、数据库、标签等一般java-web应用技术;3. 掌握整个jav

2、a-web应用架构、目录结构以及服务器使用。【需求分析】1. 设计一个较完善的网上军靴商店;2. 账户模块:提供用户注册、登录,考虑用户数量增减,需要用数据库技术;3. 商品显示模块:出于增加销售量考虑,需要有简单广告功能,并提供商品 详细参数;推广商品,网站需要对热销商品展示以及商品分类显示、商品查询;4. 订单管理模块、订单详细信息模块:显示已保存的订单的详细信息;5. 购物车模块:添加/删除商品,结帐,显示订单信息。第二早 网上商店结构分析与设计【前言】随着信息化技术在生活中的应用越来越广泛, 网上购物也逐渐成为人们的一 种生活方式。本系统正是基于这样一种环境下应运而生。 本电子商城为前

3、台部分, 前台主要实现会员的网上购物业务流程、用户注册、用户资料修改。本商城主要利用javaservlet 技术进行开发,有很强的逻辑性、可扩展性, 便于维护。商城界面设计主要实用了 CSS美化了店面。其次本商城设计还使用 了 JSP技术、JDBC技术、JavaBean 技术、css。2.1系统结构图商店前台商品分类显示模块执八、购用销物户商车注品册模模模块块块执八、销 商 品 模 块商 品 查 询 模 块收银台模块图2.1 系统整体框图2.2系统功能分析新品上市模块:在首页框架中显示新品列表 畅销商品模块:在首页框架中显示畅销列表 购物车模块:显示已点击购买但没结账的商品 结账模块:直接显示

4、当前订单查看商品信息模块:显示当前商品详细信息商品分类模块:分类显示商品全部商品模块:显示商品列表查询商品模块:搜寻商品,显示商品信息 用户注册模块:实现用户注册统功能分析第三章详细设计3.1数据库设计商品表(shoe)typcldshoeldnameprice?1詡静珮头翱薜耶孵刖柞養寿询駆需19611 12 camel坷显舅竝荃垂斬裁頁翹芒二凑马丁雪溉琵网匪.4W1483对衍竜歡桶t子美511唱诙觀梯兵岂揃囁子22034昨湘耳里徳锻氓 7«匹砸对防頭服碰1301655异士嶷翻暉头兰毛繼济歎斧钦1手匿諌可归丁单藝196016猟叭加如碗均2602用户表(user)usernarvie

5、passwordmailtel?12311697162L913836314351admin123123123gwh1231169716219 qq. corn12345673dgypgypaaaaaaqw色qwe120qq&rnqwetest123dffd用户订单表(orderinfo )orderldusernam 亡trueNamecourtpayment1admindyf125345&120Fn May 09 03:3:12 CST :Ri May 09 02:23:47 CST :admirradirtirrgyp douyifeng6S768SXXXX JDCXX X

6、XXX XXXK1”12&Fri May 09 02:59:14 CST:Fri May 09 03:10:33 CST;adminadminyp lidong67S&4545757&768978340320I Thu May 15 15:3;23 CST adminXXXX SQCX XKXK XXXK14?3.2 商品模块实现3.2.1 模块功能实现和关键代码说明先由JSP页面发出请求调用 mypack包下 GetshoeServlet,调用里面的 doGet方法,然后调用db.executeQuery(sql)方法,查询数据库,查到热销商 品的列表,保存进requ

7、eset对象的resault变量里,然后通过调用取出其中的 值,显示到主页面。商品查询模块按商品ID、关键词查询,商品显示模块使用 同样方法根据不同条件查询数据库。主要代码如下:protectedvoiddoGet(HttpServletRequestreq,HttpServletResp onse resp)throws ServletExcepti on, I OExcepti on req.setCharacterE ncodi ng("utf-8");Stri ng typeld = req.getParameter("typeld");Stri

8、 ng shoeId = req.getParameter("shoeld");Stri ng keyword = req.getParameter("keyword");Stri ng sql = "select * from shoe"Stri ng sqll = "select * from shoe where typeld = ?"String sql2 = "select * from shoe where shoeld = ?"List<Shoe> shoelist =

9、 new ArrayList<Shoe>();HttpSessi on sessi on = req.getSessi on();BookDB db = null;CachedRowSet result = n ull;try db = new BookDB();if(typeld != null)if(typeld.equals("O")result = db.executeQuery(sql);elseresult = db.executeQuery(sql1, typeld);while(result .n ext()Shoe shoe = new Sho

10、e();shoe.setType(result.getStri ng(1);shoe.setShoeld(result.getl nt(2);shoe.setName(result.getStri ng(3);shoe.setPrice(result.getFloat(4); shoelist.add(shoe);sessi on. setAttribute("shoelist", shoelist);resp.se ndRedirect(req.getC on textPath()+"/catalog.jsp");if(shoeld != n ull)

11、result=db.executeQuery(sql2,In teger.parse In t(shoeId);if(result. next()Shoe shoeDetail = new Shoe();shoeDetail.setType(result.getStri ng(1);shoeDetail.setShoeld(result.getl nt( 2);shoeDetail.setName(result.getStri ng(3); shoeDetail.setPrice(result.getFloat(4); shoeDetail.setSale_a moun t(result.ge

12、tI nt(5); sessi on. setAttribute("shoedetail",shoeDetail);resp.se ndRedirect(req.getCo ntextPath()+"/shoedetail.jsp");if(keyword != n ull)result = db.executeQuery(sql);while(result .n ext()if(result.getStri ng(3).co ntai ns(keyword) Shoe shoe = new Shoe(); shoe.setType(result.get

13、Stri ng(1); shoe.setShoeld(result.getl nt(2); shoe.setName(result.getStri ng(3); shoe.setPrice(result.getFloat(4); shoelist.add(shoe);sessi on. setAttribute("shoelist", shoelist);resp.se ndRedirect(req.getC on textPath()+"/catalog.jsp"); catch (Exceptio n e) / TODO Auto-ge nerate

14、d catch blocke.pri ntStackTrace();3.3用户注册/登录模块实现3.3.1 模块功能实现和关键代码说明Begi n调用/ARMY-SHOES/UserLogin Servlet 和UserRegistServlet查询/更新数据JSP页面发出请求调mypack 包 下UserRegistServlet/UserLogi nServlet,调用里面的doGet方法,然后调用i r返回丿J厂显示regist.jsp/login.jsp方法,更新数据库db.executeQuery(sql1, user name, password)主要代码如下:登录(UserLog

15、inServlet ):HttpSessi on sessi on = req.getSessio n();try db = new BookDB();result = db.executeQuery(sql1, user name, password);if (result. next() user = new User();user.setUser name(result.getStri ng(1);user.setPassword(result.getStri ng(2);user.setMail(result.getStri ng(3);user.setTel(result.getSt

16、ri ng(4);sessi on. setAttribute("user", user);resp.se ndRedirect(req.getC on textPath()"/in dex.jsp"); else resp.se ndRedirect(req.getC on textPath()"/logi n.jsp?statu=no");注册(UserRegistServlet ):Stri ng user name = req.getParameter("user name");Stri ng passwo

17、rd = req.getParameter("password");Stri ng mail = req.getParameter("mail");Stri ng tel = req.getParameter("tel");Stri ng sql1 = "select * from user where user name = ?"Stri ng sql2 = "in sert into user values(?, ?, ?, ?)"BookDB db;CachedRowSet result

18、= n ull;try db = new BookDB();result = db.executeQuery(sql1, user name);if(result .n ext()resp.se ndRedirect(req.getC on textPath()+"/regist.jsp?statu=no")elsedb.executeUpdata(sql2, user name, password, mail,tel);resp.se ndRedirect(req.getCo ntextPath()+"/regist.jsp?statu=ok")3.4

19、购物车模块实现3.4.1 模块功能实现和关键代码说明图3.1购物车模块流程图先由JSP页面发出请求调用org.actio n 包下的fin did 方法,fin did 调用Daolmpl包里的findOrderByld,把得到的结果,保存到 session 里取名 orderl通过orderdetail 里取变量得到这个值,显示到主页面。主要代码如下:Add ()方法:public synchroni zed void add(Stri ng shoeId, Shoe shoe) if(items.co ntai nsKey(shoeld) Shopp in gCartItemscitem

20、= (Shopp in gCartItem)items.get(shoeId);scitem.i ncreme ntQua ntity(); else Shopp in gCartltem n ewItem = new Shoppi ngCartltem(shoe); items.put(shoeld, n ewItem);nu mberOfltems+;Remove () 方法:public synchroni zed void remove(Stri ng shoeId) if(items.co ntai nsKey(shoeld) Shopp in gCartltemscitem =(S

21、hoppi ngCartltem)items.get(shoeld);scitem.decreme ntQua ntity();if(scitem.getQua ntity() <= 0)items.remove(shoeld);nu mberOfltems-;Gettotal()方法:public synchroni zed double getTotal() double amount = 0.0;for(Iterator i = getItems().iterator(); i.hasNext(); ) Shopp in gCartItem item = (Shopp in gCartItem) i.n ext();Shoe shoe = (Shoe) item.getItem();amount += item.getQua ntity() * shoe.getPrice();return roun dOff(am oun t);private double roun dOff(double x) lo ng val = Math.rou nd(x*100); / cents return val/100.0;public synchroni zed void clear() items.clear();nu mberOfltems =

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论