zoukankan      html  css  js  c++  java
  • jsp标准动作

    此文章为收集互联网内容,非原创,仅供忘记时查看。

    权限控制,角色授予权限,用户授予角色。判断用户是否登录

    <%
        if(session.getAttribute("user")==null){
            response.sendRedirect("lofin.jsp");
        }
    %>

    如果每页都这样写就太复杂,代码冗余。可以单独写个页面如checkUser.jsp,插入上面的代码。

    在需要的页面,通过include指令引入。

    <%@include file="/checkUser.jsp" %>

    include指令可引入任何文件,静态包含文件内容。

    jsp标准动作:利用xml语法格式的标记控制Servlet引擎,使用标签的方式代替编写java代码。

    语法:<jsp:>作为前缀,属性区分大小写。

    <jsp:action_name attribute1="value1" attribute2="value2"/>

    1.    include标准动作,如include指令引入就可以写成:

    <jsp:include page="checkUser.jsp"/>

    允许在jsp页面包含动态文件和静态文件。

    被包含的页面是动态页面,会先处理后再包含。静态包含与include指令一样。

    /*使用此包含语句,被包含的页面时动态页面,就可以向被包含的页面之中传递参数,可以通过request.getParameter()直接接收此参数*/
    <%-- demo.jsp --%>
    <h1><%=request.getParameter("param1") %></h1>
    
    <%-- demo2.jsp --%>
    <jsp:include page="demo.jsp">
        <jsp:param value="param1" name="Hello!"/>
    </jsp:include>
    <h1>demo2页面</h1>

    <jsp:include>运行时插入页面;<%@ include file=""%>编译时插入页面。

    推荐使用<jsp:include>

     2.    forward标准动作

    <jsp:forward page=""/>

     forward完成一次跳转。

    <%--demo.jsp --%>
    <h1>hello everyone!</h1>
    
    <%--demo2.jsp --%>
    <jsp:forward page="demo.jsp"/>

    这种跳转也叫转发,地址栏没有任何改变;可以通过<jsp:param>设置参数进行传递,在跳转后页面request.getParameter()接收。

    3.    JavaBean,<jsp:userBean>

    javabean,一个可重用的java类。

    javabean特征:公共类、私有属性、setter和getter方法。

    <jsp:useBean id="name" class="package.class" scope="scope" />

    id:创建JavaBean的引用名

    class:指定JavaBean类

    scope:指定JavaBean的范围,默认page。

    <jsp:useBean id="service" class="com.me.service.UserService" scope="request"/>
    <%--相当于--%>
    <%
        UserService service = request.getAttribute("service");
        if(service == null){
            service = new UserService();
        }
        request.setAttribute("service", service);
    %>

    <jsp:setProperty>为定义的JavaBean属性赋值

    <jsp:setProperty property="propertyName" name="BeanName" param="paramer" value="value"/>

    name:userBean中使用JavaBean的id。

    property:指定要设定的属性名称。

    value:为当前属性设定的值。

    param:表单元素名称,将上个页面该表单元素的值赋给属性。

    param与value不能一起使用。

    <jsp:getProperty>获取定义的JavaBean属性赋值,然后将其插入到输出的页面中

    <jsp:getProperty property="propertyName" name="BeanName"/>

     使用之前,必须<jsp:userBean>创建。

    同一页面不能定义同名JavaBean,不同页面可以创建。

    获取属性时,优先获取当前页面定义的JavaBean。

  • 相关阅读:
    PAT (Advanced Level) 1114. Family Property (25)
    PAT (Advanced Level) 1113. Integer Set Partition (25)
    PAT (Advanced Level) 1112. Stucked Keyboard (20)
    PAT (Advanced Level) 1111. Online Map (30)
    PAT (Advanced Level) 1110. Complete Binary Tree (25)
    PAT (Advanced Level) 1109. Group Photo (25)
    PAT (Advanced Level) 1108. Finding Average (20)
    PAT (Advanced Level) 1107. Social Clusters (30)
    PAT (Advanced Level) 1106. Lowest Price in Supply Chain (25)
    PAT (Advanced Level) 1105. Spiral Matrix (25)
  • 原文地址:https://www.cnblogs.com/fenglie/p/jsp.html
Copyright © 2011-2022 走看看