文章源自JAVA秀-https://www.javaxiu.com/568.html
需求
在list.jsp上为每一个联系人添加一个复选框,在页面上添加一个"删除选中"按钮 然后勾选需要删除的联系人,点击按钮,删除选中联系人
技术分析
前台实现文章源自JAVA秀-https://www.javaxiu.com/568.html
复选框的全选和全不选
后台实现文章源自JAVA秀-https://www.javaxiu.com/568.html
将点中的用户的id传递给后台,后台根据传递的id去数据库进行删除 问题1:页面的数据如何传递给servlet? 1 超连接 <a href="servlet?username=xxx&password=xx&id=xxx"> 2 表单提交 表单只要提交 表单中的input标签的内容就会以 name=value的形式进行传递
案例二 根据条件做联系人的查询(检索查询)
文章源自JAVA秀-https://www.javaxiu.com/568.html
需求
在页面上添加两个文本框,人员名称和人员QQ,再添加一个查询按钮, 点击查询按钮,去数据库中查询满足条件的人员信息,然后将查询的数据显示在展示页面上
技术分析
条件查询语句文章源自JAVA秀-https://www.javaxiu.com/568.html
1 如果人员名称和人员qq都没填 是全部查询数据展示 2 如果人员名称填了人员qq没填 是按照人员名称查询数据展示 3 如果人员qq填了人员名称没填 是按照人员qq查询数据展示 4 如果人员名称和人员qq都填了 是既按照人员名称也按照人员qq查询数据展示 重点关注dao: IF(NAME==""&&qq==""){ SQL=SELECT * FROM contact; }ELSE IF(NAME!="" && qq==""){ SQL=SELECT * FROM contact WHERE NAME LIKE ?; }ELSE IF(NAME=="" && qq!="") { SQL=SELECT * FROM contact WHERE qq LIKE ?; }ELSE{ SQL=SELECT * FROM contact WHERE qq LIKE ? AND NAME LIKE ?; } LIST<Contact>==list.jsp 此种方式虽然逻辑很好,但是过于麻烦,不推荐 企业开发如何去优化该方式的语法呢:sql语句的拼接
案例三 分页展示数据
需求
若联系人比较多的时候,在展示页面上显示的数据特别多,导致页面特别长. 为了给用户更好的体验我们需要进行分页显示联系人信息. 6条数据:每页显示2条 一共3页
技术分析:分页
分页的作用:为了给用户更好的阅读体验文章源自JAVA秀-https://www.javaxiu.com/568.html
分页的分类:物理分页 逻辑分页文章源自JAVA秀-https://www.javaxiu.com/568.html
物理分页:企业 特点:每次点击下一页,每次就去数据库里面查询当前页的数据 优点:能够保证数据都是最新的 缺点:频繁的和数据库进行交互会带来效率低下的问题 (redis) 逻辑分页: 特点:一次性将数据全部查询出来,放在一个容器中 当每次点击下一页,不是去数据库获取,而是去容器中获取 优点:不会频繁的和数据库进行交互 缺点:不能保证数据的时时更新
Mysql提供的分页关键字:limit文章源自JAVA秀-https://www.javaxiu.com/568.html
格式:select * from 表 limit a,b a:起始数据 从哪开始 b:查多少条数据 例如:每页显示2条记录第一页: select * from contact limit 0,2; 每页显示2条记录第二页: select * from contact limit 2,2; 每页显示2条记录第三页: select * from contact limit 4,2; 每页显示2条记录第四页: select * from contact limit 6,2; 每页显示2条记录第五页: select * from contact limit 8,2; 格式:select * from 表 limit 起始数据,要查的条数(每页显示的条数) 每页显示的条数固定:2条 起始数据:不固定 起始数据的规律(记住):(当前页-1)*每页显示的条数 1 0 2 2 3 4 4 6 5 8 6 10
分页上集文章源自JAVA秀-https://www.javaxiu.com/568.html
终极目标:将当前页的2条数据查询出来展示 页面上要展示的数据(list) List=Select * from 表 limit ?,?; 参数(2个): 1 每页显示的条数(pageSize) 固定 2 需要当前页(pageNumber) 因为根据当前页可以算出起始数据 (pageNumber-1)*pageSize 入口:第一页
分页下集文章源自JAVA秀-https://www.javaxiu.com/568.html
需要在页面定义【首页】 【上一页】 【下一页】 【尾页】 参数: 当前页 pageNumber 传多少代表多少 总条数 totalCount select count(*) from contact; 总页数 totalPage 10/2=5 11/2=5+1 if(totalCount%pageSize==0){ totalPage=totalCount/pageSize } else{ totalPage=totalCount/pageSize+1 }文章源自JAVA秀-https://www.javaxiu.com/568.html
继续阅读
速蛙云 - 极致体验,强烈推荐!!!购买套餐就免费送各大视频网站会员!快速稳定、独家福利社、流媒体稳定解锁!速度快,全球上网、视频、游戏加速、独立IP均支持!基础套餐性价比很高!这里不多说,我一直正在使用,推荐购买:https://www.javaxiu.com/59919.html

资源分享QQ群
本站是JAVA秀团队的技术分享社区, 会经常分享资源和教程; 分享的时代, 请别再沉默!
评论