JSP笔记

本文详细介绍了JSP的基础知识,包括Hello JSP、页面元素如静态内容、指令、表达式、Scriptlet、声明、动作以及注释。特别讨论了<%=%>与<%out.println()%>的使用区别,以及JSP的include机制,区分了指令include和动作include在生成Servlet源码和传参方面的不同。

JSP 1

1.Hello JSP

<%@page contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" import="java.util.*"%>
 
你好 JSP
 
<br>
 
<%=new Date().toLocaleString()%><%--输出当前时间--%>

2.页面元素

1)页面元素

  1. 静态内容
    就是html,css,javascript等内容

  2. 指令<%@ %>
    比如<%@page import=“java.util.*”%>

  3. 表达式 <%= %>
    用于输出一段html

  4. Scriptlet<%%>
    在<%%> 之间,可以写任何java 代码

  5. 声明<%!%>
    在<%!%> 之间可以声明字段或者方法。

  6. 动作
    <jsp:include page=“Filename” > 在jsp页面中包含另一个页面。

  7. 注释 <%-- – %>
    不同于 html的注释 通过jsp的注释,浏览器也看不到相应的代码,相当于在servlet中注释掉了

2)<%=%>和 <%out.println()%>

<%="hello jsp"%> 

就相当于

<%out.println("hello jsp");%>

out是jsp的隐式对象,可以直接使用。
注: <%=%> 不需要分号结尾,<%%> 需要以分号结尾,和java代码一样

3.include

1)指令include

<%@include file="footer.jsp" %>

2)动作include

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

3) 指令include和动作include的区别
已知,JSP最后会被转译成Servlet

指令include

<%@include file="footer.jsp" %>

footer.jsp的内容会被插入到别的.jsp(例如:hello.jsp )转译 成的hello_jsp.java中,最后只会生成一个hello_jsp.java文件

动作include

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

footer.jsp的内容不会被插入到 hello.jsp 转译 成的hello_jsp.java中,还会有一个footer_jsp.java独立存在。 hello_jsp.java 会在服务端访问footer_jsp.java,然后把返回的结果,嵌入到响应中。

4)传参

因为指令<%@include 会导致两个jsp合并成为同一个java文件,所以就不存在传参的问题,在发出hello.jsp 里定义的变量,直接可以在footer.jsp中访问。

动作<jsp:include />其实是对footer.jsp进行了一次独立的访问,那么就有传参的需要。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值