<%@ page import="java.io.*" contentType="text;html" session="true" buffer="8kb" autoFlush="true" info="hongxiaohong" language="java" import="java.util.*" pageEncoding="UTF-8" %>
<!-- 这是注释,import导包,contentType表示内容类型MIME协议
session表示是否参加http对话
isELIgnored表示是否忽略el表达式(invalid value for isELIgnored)
好像现在没有了这个属性
也许是因为想逐渐用jstl和el表达式代替脚本吧
autoFlush表示是否自动输出缓存区,
buffer设置缓存区大小无为none,
pageEncoding表示编码 -->
<!-- 从今天起决定在代码中加入注释用来以后复习只用,
也方便加到博客中,哈哈哈 -->
<!-- 这种注释是会被解释到servlet里面的
但是脚本中的注释<%-- --%>则不会被加到servlet中 -->
<%--!!!jsp原理
jsp是由服务器提供的,
首先浏览器向服务器请求
服务器检查是否有这个资源,没有则返回404
有则生成request和response对象
将该jsp生成servlet.java和.class文件
java和class文件存在于服务器中
本实验为:D:\tomcat\apache-tomcat-7.0.82\work\Catalina\localhost\jsptest\org\apache\jsp
也就是服务器的目录以及工程的目录中
将资源导入进来后生成HTML页面
通过response对象返回给浏览器 --%>
<%@include file="/what.jsp" %>
<%--静态包含将会在编译阶段将资源导入进来
只会生成一个servlet
而动态包含则是在请求阶段才将资源导入进来
会生成两个servlet
--%>
<%--
include指令在转换时插入“Header.jsp”的源代码,
而<jsp:include>动作在运行时插入“Header.jsp"的响应。
静态导入是将被导入页面的代码完全融入,两个页面融合成一个整体Servlet;
而动态导入则在Servlet中使用include方法来引入被导入页面的内容。
静态导入时被导入页面的编译指令会起作用;
而动态导入时被导入页面的编译指令则失去作用,只是插入被导入页面的body内容。
<%@include为静态包含,
<%@include不论包含的是txt文本还是jsp文件,
被包含的页面都不会重新编译。
<%@include为静态包含,包含了几个JSP转译成servlet时就会有几 个 class文件
如果在jsp1定义了变量i同时在jsp2也定义了变量i那么你编译都会通不过的,
--%>
<%--Add JSTL Libraries (是灰色的)导入是跟 J2EE版本有关
因为Java EE5.0 已经自动把jstl包导入了 不需要手动选择
而J2EE1.3和1.4都需要手动选择导入 --%>
<%--taglib可以将c便签导入,也可以自定义自己便签 --%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<title>My JSP 'homepage.jsp' starting page</title>
</head>
<body>
<%-- 这种注释不会加到servlet中--%>
<%=1/1 %>
</body>
</html>
jsp总结之jsp三大编译指令
最新推荐文章于 2022-09-30 12:38:17 发布