《JavaWeb第四章》

一、JSP

1.JSP简介

为什么要学习JSP:
答:默认的HTML技术是无法将后台的数据直接渲染在前台的
例如在后台的request容器,session容器存了东西,要想在前台拿出来渲染,单独利用HTML无法实现的
所以需要借助额外的知识点才可以实现:   例如JSP技术,AJAX技术等

2.JSP的组成

组成:HTML  +  Java    +  JSP本身
不仅可以写html代码还可以写java代码还可以写JSP代码
但是一般来说 不会再JSP里面写Java代码,最多写点JSP代码 
JSP的本质:本质就是一个Servlet .运行流程:现将JSP解析成servlet再运行。

3.JSP现状

25年前的技术,早已过时,无人问津。所以本书的内容仅做了解。
技术领域:存在即合理。  即使已经过时了。但是过时的原因仅仅是:后人借鉴了它,然后超过了它
原因:效率极低。现在的项目都是讲究一个前后端分离。  前台只操心前台,后台只操心后台

4.两种注释的区别 

JSP的注释不会被解析到浏览器中,而HTML会
<!--我是HTML注释 -->
<%--我是JSP注释  --%>

二、EL表达式

知识点1:仅仅存在于JSP中,脱离了JSP无法运行。
知识点2:可以直接将后台数据渲染在页面上。
知识点3:语法:  美元符号{ xxx }   
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>

    例如:可以实现基本的运算: ${1+1+1}   ${1*5*2}  ${"111" + "222"}   <br>
    <hr>

    例如:可以轻松地获取后台容器的数据: <a href="AServlet">先存几个</a> <br>
    ${info1}  ~~~ ${info2} ~~~  ${info3}   <br>
    <br>如果存在 不同的容器 但是key相同 。那么可以在key的前面加上前缀即可:例如 <br>
    ${requestScope.info1}  ~~~ ${sessionScope.info1} ~~~  ${applicationScope.info1}

    <hr>

    例如:可以轻松的获取url地址上的相关参数
    <a href="update.jsp?id=123&name=张三&age=18">修改页面</a>

</body>
</html>
package com.yyzy.servlet;

import javax.servlet.ServletContext;
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 java.io.IOException;

@WebServlet("/AServlet")
public class AServlet extends HttpServlet {
    @Override
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        req.setAttribute("info1","你好111");
        req.getSession().setAttribute("info1","你好222");
        ServletContext context = req.getServletContext();
        context.setAttribute("info1","你好333");
        req.getRequestDispatcher("2.jsp").forward(req,resp);
    }
}
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>

<p>下面的写法是获取容器里面的id,但是现在我们要获取url地址里面相关参数</p>
~${id}~
<p>如果想要获取url地址上的参数,那么只需要加上前缀 param</p>
${param.id} ~~${param.name} ~~${param.age} ~~
</body>
</html>

 

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值