添加专业的思路整理

6 篇文章 0 订阅

在添加专业的时候,需要先查询到所有的院系,把所有的院系添加到下拉框中。
在MajorServlet中,需要专门写一个方法,用来加载界面。

添加页面Servlet

public void addPage(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        // 获取所有的院系,发送到页面
        List collegeList =
                collegeService.searchListAll(null);
        logger.debug(collegeList);
        // 通过request容器,给页面传递一个数据
        request.setAttribute("collegeList",collegeList);
        //请求转发(forward)到WEB-INF/page/major/majorAdd.jsp页面进行处理
        request.getRequestDispatcher("WEB-INF/page/major/majorAdd.jsp")
        .forward(request,response);

    }

将查询到的collegeList放入到request容器之中。此时,可以将request理解为Map中的key-value。将request的数据转发到majorAdd.jsp当中去,在major.jsp页面处理结果。

HttpServletRequest

HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,通过这个对象提供的方法,可以获得客户端请求的所有信息。
在这段代码中,request是作为一个容器使用的。
request对象作为一个域对象(Map容器)使用时,主要是通过以下的四个方法来操作
*
setAttribute(String name,Object o)方法,将数据作为request对象的一个属性存放到request对象中,例如:request.setAttribute(“data”, data);
*
getAttribute(String name)方法,获取request对象的name属性的属性值,例如:request.getAttribute(“data”)
*
removeAttribute(String name)方法,移除request对象的name属性,例如:request.removeAttribute(“data”)
*
getAttributeNames方法,获取request对象的所有属性名,返回的是一个,例如:Enumeration
attrNames = request.getAttributeNames();

院系的下拉框

<div class="layui-form-item">
            <label class="layui-form-label">选择院系</label>
            <div class="layui-input-block">
                <select id="college" name="college" lay-filter="college" lay-verify="required" lay-reqtext="请选择一个院系">
                    <option value="" selected="">--请选择--</option>
                    <c:forEach items="${collegeList}" var="college">
                    <option value="${college.collegeId}">${college.collegeName}
                    </option>
                    </c:forEach>
                </select>
            </div>
        </div>
El表达式 的for循环

EL(Expression Language) 是为了使JSP写起来更加简单
在使用El表达式,和C标签的时候,需要在开头加上一行代码,引用一下jstl标签库。

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
                    <c:forEach items="${collegeList}" var="college">
                    <option value="${college.collegeId}">${college.collegeName}
                    </option>
                    </c:forEach>

${collegeList}是在request容器获得的,用for循环,处理数据。

init.jsp

{
              "title": "添加专业",
              "href": "BaseServlet.do?servlet=MajorServlet&method=addPage",
              "icon": "fa fa-plus-square",
              "target": "_self"
            }

因为需要数据处理,所以需要此方法跳转页面。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值