steve_yanrun
Ray-Yan
采纳率100%
2016-09-25 14:02

Servlet获取不到JSP页面上的值

3
已采纳

如下是Servlet代码:

 public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        HttpSession session = request.getSession();
        //String account = (String) request.getAttribute("account");
        String account = request.getParameter("a");
        System.out.println("--------------------------------"+account);
        List<Teacher> oneTeaInfo = new ArrayList<Teacher>();
        try {
            oneTeaInfo = new TeacherDao().queryTeaInfo(account);
            session.setAttribute("oneTeaInfo", oneTeaInfo);
            request.getRequestDispatcher("/teacher_info.jsp").forward(request,response);
        } catch (Exception e) {
            e.printStackTrace();
        } 
    }

如下是JSP的相关代码:

 <input type="text" name="a" value="666666" />

我是把值写死的,不写死的情况下,代码如下:

    <c:set var="account" value="${sessionScope.account}" scope="request"/>

居然运行结果是空值,如下图所示:
图片说明
图片说明
请问各位大神,应该如何解决这个问题?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

9条回答

  • qq_15617533 浊世清欢 5年前

    要嘛是input提交的时候没包含在form里面,要嘛是提交之前把a的值覆盖了

    点赞 1 评论 复制链接分享
  • u013835855 山洼之神 5年前

    应该是没有放到form表单里面

    点赞 1 评论 复制链接分享
  • ios_king 果冻剑客 5年前

    request.getAttribute("") 是根据标签的 name 属性中的字符串来拿值的。你没有对应上

    点赞 1 评论 复制链接分享
  • quasimodo_es 「已注销」 5年前

    如果是post提交的,并且a在form表单中,后台用request.getParameter("a") 取值的,
    就一定能够获取到

    点赞 1 评论 复制链接分享
  • z991876960 JAVA-ZHUANG 5年前

    post提交数据有问题

    点赞 1 评论 复制链接分享
  • sj18182656342 黄河默默 5年前

    这个看最后的sql应该是,前台没有把account参数传过来 报了sql错误
    你把name的封装变为 account

    点赞 1 评论 复制链接分享
  • niaonao niaonao 5年前

    前台代码贴出来
    应该是提交数据时出的错

    点赞 1 评论 复制链接分享
  • qq_22946541 流年丶只是记忆 5年前

    你可以把前台的代码也贴出来吗

    点赞 1 评论 复制链接分享
  • Message_lx chinesszz 5年前

    是POST方法提交的数据么

    点赞 1 评论 复制链接分享

为你推荐