新建图书类后,点击categoryList.jsp上不显示

新建图书类后,点击categoryList.jsp上不显示

package com.imooc.servlet;


import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;


import com.imooc.service.impl.CategoryServiceImpl;



@WebServlet("/AddCategoryServlet")

public class AddCategoryServlet extends HttpServlet {

private static final long serialVersionUID = 1L;


protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

}


protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// 接收页面提交的图书类的ID-bookId,图书类的名字-categoryName

String categoryId = request.getParameter("categoryId");

String categoryName = request.getParameter("categoryName");

// 处理数据

CategoryServiceImpl category = new CategoryServiceImpl();

category.addCatgory(categoryId, categoryName);


// request.setAttribute("categoryDb",category.getCategorydb());

request.setAttribute("categorys", category.getCategorydb());

System.out.println("保存书类的数据");

System.out.println(category.getCategorydb());

// 显示数据处理结果,跳转至categoryList.jsp

// response.sendRedirect(request.getContextPath() + "/categoryList.jsp");

request.getRequestDispatcher("/categoryList.jsp").forward(request, response);

doGet(request, response);

}


}

<%@ page contentType="text/html; charset=UTF-8"%>

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<!DOCTYPE html>

<html>

    <head>

        <meta charset="UTF-8">

        <title>图书后台管理</title>

        <link rel="stylesheet"  href="css/index.css">

        <link rel="stylesheet"  href="css/bootstrap.min.css">

    </head>


    <body>

       <header>

            <div class="container">

                    <nav>

                            <a href="bookList.jsp" >图书信息管理</a>

                    </nav>

                    <nav>

                            <a href="${pageContext.request.contextPath }/categoryList.jsp" >分类管理</a>

                    </nav>

                   

            </div>

        </header>

        <section class="banner">

            <div class="container">

                <div>

                    <h1>图书管理系统</h1>

                    <p>图书分类管理</p>

                </div>

            </div>

        </section>

        <section class="main">

            <div class="container">

                <table class="table table-striped">

                    <thead>

                    <tr>

                        <th>序号</th>

                        <th>分类编号</th>

                        <th>分类名称</th>

                        <th>操作</th>

                    </tr>

                    </thead>

                    <tbody>

                        <c:forEach items="${requestScope.categorys}" var="category"

varStatus="idx">

<!--  <tr>

<td>1</td>

<td>ca0001</td>

<td>计算机类</td>

<td><a href="/deleteCategory?categoryId=ca0001">删除</a></td>

<!--在循环显示数据时,此处的ca0001可以用EL表达式进行替换-->


</tr>

<tr>

<td>${idx.index+1}</td>

<td>${category.categoryId}</td>

<td>${category.categoryName}</td>

<td><a href="/${pageContext.request.contextPath}?categoryId=${idx}">删除</a></td>

<!--在循环显示数据时,此处的ca0001可以用EL表达式进行替换-->


</tr>





</c:forEach>

                    </tbody>

                </table>

            </div>

        </section>

        <section class="page">

            <div class="container">

                <div id="fatie">

                    <a href="addCategory.jsp"><button>新建</button></a>

                </div>

            </div>

        </section>

        <footer>

            copy@慕课网

        </footer>

    </body>

</html>

点击“新建”,会跳转到AddCategoryServlet能够正确显示提交的数据,但是点击一下“分类管理”后,地址会到categoryList.jsp,但是没有显示数据

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

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


正在回答 回答被采纳积分+1

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

1回答
好帮手慕小班 2020-07-20 10:42:07

同学你好,这里可以这样理解:

    1、在AddCategoryServlet中,将查询到的数据存入request作用域中:

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

当从AddCategoryServlet跳转到categoryList.jsp页面时,将参数categorys也传递过去,在页面中能通过${requestScope.categorys}获取request作用域中的categorys参数,而将数据展示出来。

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

但是如果同学直接访问categoryList.jsp页面时,没有categorys参数的查询传递,对应也就没有数据进行展示了。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

  • 提问者 视线模糊 #1
    那我的这种写法是不是算没有问题?
    2020-07-20 15:53:40
  • 好帮手慕小班 回复 提问者 视线模糊 #2
    同学你好,同学这样的写法也是可以的,继续加油 祝:学习愉快~
    2020-07-20 16:21:22
  • 提问者 视线模糊 #3
    能不能实现在点击categoryList.jsp页面时,能够显示我提交的数据喃?如果能要怎么写喃
    2020-07-20 19:48:05
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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