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)页面元素
-
静态内容
就是html,css,javascript等内容 -
指令<%@ %>
比如<%@page import=“java.util.*”%> -
表达式 <%= %>
用于输出一段html -
Scriptlet<%%>
在<%%> 之间,可以写任何java 代码 -
声明<%!%>
在<%!%> 之间可以声明字段或者方法。 -
动作
<jsp:include page=“Filename” > 在jsp页面中包含另一个页面。 -
注释 <%-- – %>
不同于 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进行了一次独立的访问,那么就有传参的需要。

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

944

被折叠的 条评论
为什么被折叠?



