Jsp基础个人学习摘要

1. Jsp 注释
<%-- Jsp注释部分 --%>
而HTML中注释
注:Jsp注释不会被发送到客户端。

2. Jsp声明
<%! 声明部分 %>
Jsp声明用于声明变量和方法,最终将会转换成对应Servlet的成员变量或成员方法。

3. 输出Jsp表达式
<%=表达式 %>

4. Jsp脚本
<%
...java代码...
%>
注:Jsp脚本里不能定义方法。

5. Jsp的3个编译指令
page/include/taglib
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>

<%@ include file="relativeURLSpec" %>

注:如果被嵌入的文件经常需要改变,建议使用操作指令,它是动态的include语句。二者之间的区别:一)静态导入是将被导入页面的代码完全融入,两个页面融合成一个整体Servlet;而动态导入则是在Servlet中使用include方法来引入页面的内容。 二)静态导入时被导入页面的编译指令会起作用;而动态导入时被导入页面的编译指令会失去作用,只是插入被导入页面的body内容。 三)动态包含还可以增加额外的参数,如:
	



6. Jsp的7个动作指令
jsp:forward、 jsp:param、 jsp:include、 jsp:plugin、 jsp:useBean、 jsp:setProperty、 jsp:getProperty
forward动作指令转发用户请求:
	


获取forward动作指令请求的参数:
<%=request.getParameter("age") %>

注:执行forward指令转发请求时,地址栏地址依然没有发生改变,也可用表单提交请求参数,如:
	




useBean、setProperty、getProperty语法格式:
	



7. Jsp脚本中的9个内置对象
request、response、session、application、exception、out、page、pageContext、config
	<% 
request.setAttribute("String attributeName","Object attributeValue");
request.getAttribute("String attributeName");
request.getParameter("String parameterName");
request.getParameterValues("String parameterName");
request.setCharacterEncoding("String characterEncoding");

response.sendRedirect("pageName");
response.getOutputStream();

session.setAttribute("String attributeName","Object attributeValue");
session.getAttribute("String attributeName");

application.setAttribute("String attributeName","Object attributeValue");
application.getAttribute("String attributeName");
application.getInitParameter("String attributeName");

exception.getMessage();
exception.getStackTrace();

out.print("data");
out.println();

//page代表该页面本身,通常没有太大用处。

pageContext.getServletContext();
pageContext.getServletConfig();
pageContext.getSession();

config.getInitParameter("String initParameterName");
config.getInitParameterNames();
//config对象更多的在servlet中有效,Jsp页面通常无需配置,也就不存在配置信息。

%>

你可能感兴趣的:(Jsp)