js页面通过servlet 删除一条数据之后,返回到原jsp页面,仍显示删除数据,该怎样处理?
我在servlet中通过response.sendRedirect(request.getHeader("Referer"));返回之前界面,但仍显示已删除数据,需手动刷...
我在servlet中通过response.sendRedirect(request.getHeader("Referer"));返回之前界面,但仍显示已删除数据,需手动刷新才能将删除数据刷掉,哪位高手帮帮忙啊
展开
展开全部
可能有缓存,还有你的实现不好....
1.缓存的处理方法 可以通过过滤器,或者有response的地方(如:jsp页面)
response.setHeader("Cache-Control", "no-cache");
response.setHeader("Cache-Control", "no-store");
response.setHeader("Pragma", "no-cache");
response.setDateHeader("Expires", 0L);
2.技术实现
一般情况下,都不太用response.sendRedirect("") .
用这个得比较多request.getRequestDispatcher("").forward(request,response);
具体 forward 和 redirect的区别,你可以网上查查,相信你面试前准备的时候都背过
3.业务实现
你这里用了一个技巧, 获得刚刚过来的页面的路径request.getHeader("Referer"),这样动态性确实不错.
不过一般的处理方式是,:
列表 -> 删除 -> 列表 select.do -> delete.do -> select.do
列表->编辑->删除->列表 select.do -> view.do->delete.do->select.do
这个你应该能明白.
前面的没什么,就是你在删除后,再跳转到查询页面(是通过后台,不是直接jsp跳转),再查询一遍,这样就不会出现脏数据了(如果出现,可能是别的原因)
你试试
1.缓存的处理方法 可以通过过滤器,或者有response的地方(如:jsp页面)
response.setHeader("Cache-Control", "no-cache");
response.setHeader("Cache-Control", "no-store");
response.setHeader("Pragma", "no-cache");
response.setDateHeader("Expires", 0L);
2.技术实现
一般情况下,都不太用response.sendRedirect("") .
用这个得比较多request.getRequestDispatcher("").forward(request,response);
具体 forward 和 redirect的区别,你可以网上查查,相信你面试前准备的时候都背过
3.业务实现
你这里用了一个技巧, 获得刚刚过来的页面的路径request.getHeader("Referer"),这样动态性确实不错.
不过一般的处理方式是,:
列表 -> 删除 -> 列表 select.do -> delete.do -> select.do
列表->编辑->删除->列表 select.do -> view.do->delete.do->select.do
这个你应该能明白.
前面的没什么,就是你在删除后,再跳转到查询页面(是通过后台,不是直接jsp跳转),再查询一遍,这样就不会出现脏数据了(如果出现,可能是别的原因)
你试试
2015-12-15 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
关注
展开全部
这是因为jsp刷新的时候没有进行剔除id查询。
一般删除数据成功了,但显示页面还有显示
说明显示页面上显示并不是数据库里的数据
建议做一个删除后自动跳转到查询页面,再访问一次数据库,这样就可以不显示删除后的数据。
一般删除数据成功了,但显示页面还有显示
说明显示页面上显示并不是数据库里的数据
建议做一个删除后自动跳转到查询页面,再访问一次数据库,这样就可以不显示删除后的数据。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-01-15
展开全部
可以这样:
第一,使用 ajax 方式删除,删除以后,直接在页面上 remove 掉相应的行即可
第二,重定向方式删除,删除掉以后,再查询一遍数据,转发到显示的页面
request.getDispatcher("xxx.jsp").forward(request,response);
第一,使用 ajax 方式删除,删除以后,直接在页面上 remove 掉相应的行即可
第二,重定向方式删除,删除掉以后,再查询一遍数据,转发到显示的页面
request.getDispatcher("xxx.jsp").forward(request,response);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用response.sendRedirect("XXX.jsp");删除后直接跳回之前的页面试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
删完记录后再调用一次查询方法,查询方法返回JSP
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询