为什么用户查询servlet执行了两次?

为什么用户查询servlet执行了两次?

http://img1.sycdn.imooc.com//climg/5d2b18fa0001143d20691092.jpg

http://img1.sycdn.imooc.com//climg/5d2b18fa000169bb15980768.jpg

这里servlet执行了两次,第一次的时候在userDao的findALL方法里销毁了sqlsession,然后程序又莫名其妙执行了一次servlet,第二次的时候session已经被销毁,然后就报错。

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

你好!先说一下sqlSession销毁的问题,应该每个方法中都获取一个新的session,然后在该方法中销毁,因此不应该存在session关闭后再去调用查询方法的问题。你可以看看代码中是不是在方法中每次都获取一个新的session

http://img1.sycdn.imooc.com//climg/5d2be1b6000184ca06350311.jpg

关于Servlet执行两次的问题,可以看一下程序的执行流程,应该是从home.jsp开始,然后转到名为index的Servlet进行查询。这里有没有两次执行/index呢?

祝学习愉快!

  • 慕圣1068954 提问者 #1
    servlet执行两次的问题我解决了,是tomacat服务器部署的时候,默认加载了一次servlet,但我并不知道怎么解决,就忽略了这件事情
    2019-07-16 12:43:54
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
Java数据库开发与实战应用2018版
  • 参与学习           人
  • 提交作业       277    份
  • 解答问题       4297    个

Java数据库开发的必备技能,从流行的MySQL数据库开始,到Java原生的数据库管理接口JDBC的使用,再到常用的数据持久化框架MyBatis,让你向Java工程师的目标又迈进了一步!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师