- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
黑马程序员WEB14-JDBC案例篇笔记.doc
第14章WEB14-JDBC案例篇
完成对商品的CRUD的操作,进行条件查询,分页查询.
需求:
购物的网站中需要显示商品的信息,在商品信息的显示中,如果商品的信息比较多.需要将比较多的商品进行分页的显示.进行条件查询.同时对商品进行修改,插入,删除.
分析:
技术分析:
使用MVC设计模式JSP + Servlet + JavaBean + JDBC实现商品信息的CRUD的操作.
步骤分析:
【步骤一】:创建数据库和表
* create database web_14;
* use web_14;
* create table `product` (
`pid` varchar (96),
`pname` varchar (150),
`market_price` double ,
`shop_price` double ,
`pimage` varchar (600),
`pdate` date ,
`is_hot` double ,
`pdesc` varchar (765),
`pflag` double ,
`cid` varchar (96)
);
【步骤二】:创建工程导入jar包.
* msysql驱动
* c3p0的包
* dbutils的包
* beanUtils的包:两个.
* JSTL的包:两个
【步骤三】:创建包结构.
【步骤四】:创建一个首页:
h1欢迎来到商品信息管理平台/h1
h3a href=${ pageContext.request.contextPath }/ProductFindAllServlet查询所有商品/a/h3
代码实现:
商品的查询的功能:
在首页上点击【查询所有商品】链接:
提交到Servlet中:
* 调用业务层--调用DAO:
* 将商品列表保存到request域中:
* 转发到商品列表页面:
在商品列表的页面中显示商品:
商品的添加的功能:
在首页点击【添加】链接:跳转到添加页面.
在添加页面中输入信息:点击【提交】提交到Servlet
在Servlet中:
* 接收数据:
* 封装数据:
* 调用业务层:
* 页面跳转
* 重复提交的问题:
* 添加完商品之后,转发到一个页面,刷新该页面.
* 网速很慢,点击提交的按钮,其实已经在提交了但是网速慢,不停的点击提交.
* 解决重复提交的根本解决办法:令牌机制(一次性).
* 生成随机的令牌保存在session中.
* 在表单的提交的时候,将随机的令牌放入到表单的隐藏字段中.
* 在Servlet中获得session中和表单中的令牌是否一致.
* 如果一致执行插入操作,不一致跳转到其他页面.将令牌销毁.
* 代码实现:
// 判断是否是重复提交:
String token1 = (String)request.getSession().getAttribute(token);
String token2 = request.getParameter(token);
// 清空session中的令牌:
request.getSession().removeAttribute(token);
if(!token2.equals(token1)){
request.setAttribute(msg, 亲!您已经提交过!请不要重复提交了!);
request.getRequestDispatcher(/jsp/msg.jsp).forward(request, response);
return;
}
商品的信息的修改:
在列表页面上点击【修改】链接:
提交到Servlet:根据id查询该商品.将商品的信息显示到修改页面:
在修改的页面上修改数据,点击【提交】按钮:
提交到Servlet:完成商品信息的修改:
商品的信息的删除:
在列表页面上点击【删除】链接:
提交到Servlet:
调用业务层完成删除的操作:
***** 扩展删除多条记录:
商品模糊查询:
商品分页显示:
分页条: 【首页】【上一页】[1][2][3][4]【下一页】【尾页】
分页功能的实现:
* 物理分页:一次只查10条记录,点击下一页,再去查询后10条.使用SQL语句进行控制的分页.
* 缺点:经常需要和数据库交互.
* 优点:数据量特别大,不会导致内存的溢出.
* 逻辑分页:一次性将所有数据全都查询出来,根据需要进行截取.List集合进行控制. subList();
* 缺点:数据量如果特别大,容易导致内存溢出.
* 优点:与数据库交
您可能关注的文档
最近下载
- PSL-621U线路保护装置说明书-V120.pdf VIP
- 圆柱圆锥的认识1市公开课一等奖省赛课微课金奖课件.pptx VIP
- 人教版(2024)数学八年级上册课件 18.1.1 从分数到分式.pptx VIP
- 永恒传说图文攻略.docx VIP
- 初级社工实务考试题库及答案.docx VIP
- ABBACS510变频器主要参数设定.docx VIP
- ABBACS510系列变频器常见故障分析.pdf VIP
- BS EN 12350-2-2019 Testing fresh concrete Part 2:Slump test 新拌混凝土试验第2部分: 坍落度试验.pdf
- 三矿--2025年安全生产治本攻坚三年行动任务分解及完成情况表(6.25).xlsx
- 大阪精密齿轮检测中心说明书.pdf
原创力文档


文档评论(0)