为了账号安全,请及时绑定邮箱和手机立即绑定

jsp获取servlet值为null

标签:
Java

今天又遇到这个问题了。

先来看看自己的问题,

https://img1.sycdn.imooc.com//5b3c45910001db3418990870.jpg

这是我的项目目录。

1,运行tomcat,就先跳转到home.jsp,home.jsp就是跳转到index.jsp。

2,你会发现index.jsp要跳转到/index,我的servlet配置如下:

@WebServlet("/index")
public class UsersFindServlet extends HttpServlet {
    private UsersDAO usersDAO = new UsersDAO();
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        this.doPost(req, resp);
    }
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        List<Users> list = usersDAO.findAll();
        String use = "use";
        req.setAttribute("use", use);
        req.setAttribute("usersList", list);
        req.getRequestDispatcher("index.jsp").forward(req, resp);
    }
}

3,我在index.jsp中,写了段测试代码:

<%
    String use = (String) request.getAttribute("use");
    System.out.println(use);
    List list = (List) request.getAttribute("usersList");
    System.out.println(list);
%>

但是,结果如下:

https://img1.sycdn.imooc.com//5b3c482200015f3019150580.jpg

5,针对这个,的确有些奇怪。于是,我顺着这个信息,就找到了原因。


一、原来,tomcat首先跳转到配置路径,下图所示:

https://img1.sycdn.imooc.com//5b3c48a10001e36113401020.jpg

如果,这个路径与你要跳转的路径产生冲突,务必要修改。

二,然后,再是web.xml的

welcome-file-list

配置的页面。

三、说了半天,什么意思呢?

    其实,你需要检查的是下图的路径,打红圈的

https://img1.sycdn.imooc.com//5b3c4952000173b713401020.jpg

然后,再检查是否是变量名写错了,以及其他的检查。


这里值得一提的是,利用

System.out.println

来合理地测试,是不错的选择。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消