JAVA-EE使用EL表达式取得WEB应用的根路径并输出到浏览器------计算机网络经典

330 篇文章 2 订阅
131 篇文章 0 订阅
EL表达式
EL表达式是为了代替JSP的java代码,让JSP看起来更加整洁美观,JSP中夹杂着各种java代码就会让文件混乱不好维护
第一功效:从某个域中取数据,将取出的数据转成字符串,将字符串输出到浏览器
EL表达式是属于JSP语法的一种
在没有指定范围的情况下,EL表达式优先从最小的范围中取值
EL表达式有四个隐式的范围对象pageScope,applicationScope,requestScope,sessionScope
这四个隐式的范围对象可以指定我们取值的域
EL表达式表示取值还可以使用[]包括的方式来实现
[]这个主要是为了解决我们的参数内有.的情况下使用的,针对特殊字符设计
<%@ page contentType="text/html;charset=UTF-8" isELIgnored="false" %>
忽略EL表达式,设置后就无法使用EL表达式取值
如果是针对某一个标签禁用EL表达式,就直接用\就可以了
<%--    JSP九大内置对象中的request,就是我们pageContext获取的那个request--%>
<%--    但是在我们的EL表达式里面没有这个JSP九大内置对象的request,我们就需要用pageScope去获取这个request对象--%>
<%--    为什么要获取我们的request对象--%>
<%--因为我们要用request.getContextPath来获取应用的根路径--%>
<%--    这样就做到了使用EL表达式获取应用根路径--%>
EL表达式
EL表达式是为了代替JSP的java代码,让JSP看起来更加整洁美观,JSP中夹杂着各种java代码就会让文件混乱不好维护
第一功效:从某个域中取数据,将取出的数据转成字符串,将字符串输出到浏览器
EL表达式是属于JSP语法的一种
在没有指定范围的情况下,EL表达式优先从最小的范围中取值
EL表达式有四个隐式的范围对象pageScope,applicationScope,requestScope,sessionScope
这四个隐式的范围对象可以指定我们取值的域
EL表达式表示取值还可以使用[]包括的方式来实现
[]这个主要是为了解决我们的参数内有.的情况下使用的,针对特殊字符设计
<%@ page contentType="text/html;charset=UTF-8" isELIgnored="false" %>
忽略EL表达式,设置后就无法使用EL表达式取值
如果是针对某一个标签禁用EL表达式,就直接用\就可以了
<%--    JSP九大内置对象中的request,就是我们pageContext获取的那个request--%>
<%--    但是在我们的EL表达式里面没有这个JSP九大内置对象的request,我们就需要用pageScope去获取这个request对象--%>
<%--    为什么要获取我们的request对象--%>
<%--因为我们要用request.getContextPath来获取应用的根路径--%>
<%--    这样就做到了使用EL表达式获取应用根路径--%>
<%@ page import="com.bjpowernode.oa.web.Pojo.Dept" %>
<%@ page import="java.util.*" %>
<%@ page contentType="text/html;charset=UTF-8" isELIgnored="false" language="java" %>
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>欢迎页</title>
</head>
<body>
    <h1>用户登录</h1>
    <hr>
    <form action="<%=request.getContextPath()%>/user/login" method="post">
        username:<input type="text" name="username"><br>
        password:<input type="password" name="password"><br>
        10天免登录:<input type="checkbox" name="flag" value="1"><br>
        <input type="submit" value="login">
    </form>
    <h1>
        <a href="<%=request.getContextPath()%>/cookie/generate">
            服务器生成Cookie,然后把Cookie传给浏览器,浏览器收到,再放到客户端上
        </a>
    </h1>
    <h1>
        <a href="<%=request.getContextPath()%>/sendCookie">
            浏览器发送Cookie给服务器
        </a>
    </h1>
<%=pageContext.getRequest()%>
    <br>
<%--    JSP九大内置对象中的request,就是我们pageContext获取的那个request--%>
<%--    但是在我们的EL表达式里面没有这个JSP九大内置对象的request,我们就需要用pageScope去获取这个request对象--%>
<%=request%>
    <br>
${pageContext.request}
<%--    为什么要获取我们的request对象--%>
<%--因为我们要用request.getContextPath来获取应用的根路径--%>
    <br>
    <%=((HttpServletRequest)pageContext.getRequest()).getContextPath()%>
    <br>
<%--    这样就做到了使用EL表达式获取应用根路径--%>
    ${pageContext.request.contextPath}
</body>
</html>
<%@ page import="com.bjpowernode.oa.web.Pojo.Dept" %>
<%@ page import="java.util.*" %>
<%@ page contentType="text/html;charset=UTF-8" isELIgnored="false" language="java" %>
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>欢迎页</title>
</head>
<body>
    <h1>用户登录</h1>
    <hr>
    <form action="<%=request.getContextPath()%>/user/login" method="post">
        username:<input type="text" name="username"><br>
        password:<input type="password" name="password"><br>
        10天免登录:<input type="checkbox" name="flag" value="1"><br>
        <input type="submit" value="login">
    </form>
    <h1>
        <a href="<%=request.getContextPath()%>/cookie/generate">
            服务器生成Cookie,然后把Cookie传给浏览器,浏览器收到,再放到客户端上
        </a>
    </h1>
    <h1>
        <a href="<%=request.getContextPath()%>/sendCookie">
            浏览器发送Cookie给服务器
        </a>
    </h1>
<%=pageContext.getRequest()%>
    <br>
<%--    JSP九大内置对象中的request,就是我们pageContext获取的那个request--%>
<%--    但是在我们的EL表达式里面没有这个JSP九大内置对象的request,我们就需要用pageScope去获取这个request对象--%>
<%=request%>
    <br>
${pageContext.request}
<%--    为什么要获取我们的request对象--%>
<%--因为我们要用request.getContextPath来获取应用的根路径--%>
    <br>
    <%=((HttpServletRequest)pageContext.getRequest()).getContextPath()%>
    <br>
<%--    这样就做到了使用EL表达式获取应用根路径--%>
    ${pageContext.request.contextPath}
</body>
</html>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值