JavaEE实验报告2091.docx
- 文档编号:29868541
- 上传时间:2023-08-03
- 格式:DOCX
- 页数:8
- 大小:121.33KB
JavaEE实验报告2091.docx
《JavaEE实验报告2091.docx》由会员分享,可在线阅读,更多相关《JavaEE实验报告2091.docx(8页珍藏版)》请在冰豆网上搜索。
JavaEE实验报告2091
院系:
计算机科学学院
专业:
软件工程
年级:
2013级
课程名称:
javaee
姓名(学号):
蔡磊(201321092107)
高维珍(201321092051)
蒋智琳(201321092052)
李欣(201321092053)
丁其鑫(201321092099)
指导教师:
徐胜舟
2015年10月28日
年级
2013级
班号
03
组号
专业
软件工程
实验名称
购物车
实验室
9#204
实
验
目
的
和
要
求
一.实验目的:
(1)掌握JSP指令的使用方法;
(2)掌握JSP动作的使用方法;(3)掌握JSP内置对象的使用方法;(4)掌握JavaBean的编程技术及使用方法;
(5)掌握JSP中数据库编程方法
二.实验要求:
1.利用JSP编程技术实现一个简单的购物车程序,具体要求如下。
(1)用JSP编写一个登录页面,登录信息中有用户名和密码,分别用两个按钮来提交和重置登录信息。
(2)编写一个JSP程序来处理用户提交的登录信息,如果用户名为本小组成员的名字且密码为对应的学号时,采用JSP内置对象的方法跳转到订购页面(显示店中商品的种类和单价等目录信息);否则采用JSP动作提示用户重新登录(注:
此页面上要包含前面的登录界面)。
(3)当顾客填好所需商品的数量并点击提交按钮时,将前面订购的商品放入购物车中并显示购物车里的相关信息,包括商品的名称和数量以及所有商品的总价格(关于总价格的计算,要求通过编写一个JavaBean来辅助实现)。
(4)修改登录程序。
将合法用户信息(用户名)写入数据库中,登录时通过查找数据库来完成登录。
(5)将商品信息写入数据库,计算价格时通过查找数据库来完成。
概
要
设
计
(
整
体
流
程
)
3、概要设计
3.1该系统实现了模拟购物的功能,首先把用户的信息存入数据库mydb1中,用户登录的时候会根据输入的用户名和密码在数据库中保存的数据相匹配,匹配成功时,会进入购物车界面,然后用户根据自己的需求选择自己需要的商品,商品的数量,添加到购物车中,自然就会出来一共多少钱,最后结账购买退出系统。
3.2系统流程图如下所示:
Y
N
(写不完时,可另加附页。
)
详
细
设
计
(
算
法
实
现
)
四、详细设计
本购物程序总共分为(buy.jsp、cart.jsp、down_success.jsp、login_conf.jsp、login_failure.jsp、login_sucess.jsp、login.jsp)7个jsp页面和三个javabean类
4.1Login.jsp页面:
该页面就是简单的登陆界面,将用户名和密码填写好后通过from表单将用户名和密码提交给login_conf.jsp界面处理。
4.2login_conf.jsp页面:
该jsp主要是用来判断用户输入的账号和密码是否正确,把用户输入的账号和密码和数据库中的mm表里面的数据进行对比,如果账号和密码都正确,则用forward动作跳转到login_success.jsp页面,否则用forward动作跳转到loginagin.jsp页面进行重新登录。
改jsp主要是调用mysql数据库,加载驱动获取连接对象后然后通过PrepareStatement进行用户名和密码匹配。
4.3Login_fail.jsp页面:
Login_fail.jsp是提醒输入账号和密码不匹配的用户重新输入,是用include指令将登陆页面login.jsp包含进来,以便用户重新输入。
4.4login_Success.jsp页面
Success.jsp页面就是主要的购物界面,这个页面就包含了商品的主要信息,供用户选择。
用户购物主要就是在这个页面上实现,所有的商品信息都写在shop这个form表单上,用户选择自己想要购买的东西之后,就将form表单提交给buy.jsp这个页面进行处理.。
4.5buy.jsp页面
buy.jsp主要功能就是处理用户购买商品的信息。
通过遍历上个页面已经购买的物品用Iterator遍历出来,上个login_success.jsp界面选择的物品全部用cart.java这个javabean保留,用cart.java这个javabean用来保存和删除自己所购买的商品。
然后把购物车中的商品再次分出product.java这个javabean来专门保存商品的详细信息。
Login_sucess.jsp界面中设置一个setproductidset集合,当用户添加购物项的时候记录保存id,在buy.jsp这个界面getId()方法获取到添加的物品是什么,然后根据javabean的属性分别计算它们的总价。
详
细
设
计
(
算
法
实
现
)
4.6cart.jsp
好吧,这个界面是我用数据库来完全保存的物品信息,所有物品都在数据库中。
通过select*fromcart这个sql语句读出所有的商品列表。
将结果保存在resultset中。
通过getString()方法取出所有内容并显示。
4.7down_success.jsp
该界面没什么特别的功能,仅仅只是个退出的功能。
4.8数据库的连接
数据库连接大致分为以下几步:
1.Class.forName(“com.mysql.jdbc.Driver”);//注册驱动
2.Stringurl=“jdbc:
mysql:
//localhost:
3306/mydb1”;
3.Stringusername=“root”;
4.Stringpassword=“”;
5.Connectioncon=DriverManager.getConnection(url,username,password);
4.9.数据库结果处理心得
获取Statement:
在得到Connectoin之后,说明已经与数据库连接上了,下面是通过Connection获取Statement对象的代码:
Statementstmt=con.createStatement();
发送SQL增、删、改语句
Stringsql=“insertintouservalue(’zhangSan’,’123’)”;
intm=stmt.executeUpdate(sql);
其中int类型的返回值表示执行这条SQL语句所影响的行数,我们知道,对insert来说,最后只能影响一行,而update和delete可能会影响0~n行。
如果SQL语句执行失败,那么executeUpdate()会抛出一个SQLException。
Statement是用来向数据库发送要执行的SQL语句的!
发送SQL查询语句
Stringsql=“select*fromuser”;
ResultSetrs=stmt.executeQuery(sql);
读取结果集中的数据
ResultSet就是一张二维的表格,它内部有一个“行光标”,光标默认的位置在“第一行上方”,我们可以调用rs对象的next()方法把“行光标”向下移动一行,当第一次调用next()方法时,“行光标”就到了第一行记录的位置,这时就可以使用ResultSet提供的getXXX(intcol)方法来获取指定列的数据了:
rs.next();//光标移动到第一行
rs.getInt
(1);//获取第一行第一列的数据
当你使用rs.getInt
(1)方法时,你必须可以肯定第1列的数据类型就是int类型,如果你不能肯定,那么最好使用rs.getObject
(1)。
实
验
结
果
及
分
析
5、实验结果分析
5.1、登录界面
5.2、购物界面
5.3结账界面
实
验
结
果
及
分
析
5.4、付款失败界面
5.5、登录失败界面
组
内
分
工
蔡磊,叶菁萱,罗京负责界面以及代码的编写;
黄海勇负责数据库的创建与jdbc的连接;
俞恒负责编写实验报告。
心
得
体
会
蔡磊:
高维珍:
蒋智琳:
李欣:
丁其鑫:
成
绩
评
定
教师签名:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JavaEE 实验 报告 2091