开发JSP应用的基础知识

  1、普通脚本可以使用所有的Java语法,除了定义函数。
  2、声明脚本的变量、函数都是全局变量;<%!  %>
  3、声明脚本的内容必须在普通脚本<% %>中调用
  4、如果声明脚本的函数中有返回值,使用输出脚本调用<%= %>
  5、输出脚本后面不能有分号
  6、注释 <%--  注释内容 --%>(Java注释,不编译)或者<!--  注释内容  -->(html注释)

  1、JSP指令
  <%@ page...  %> 定义页面的依赖属性,比如脚本语言、error页面、缓存定义等
  <%@ include... %> 包涵其他文件
  <%@ taglib... %> 引入标签库的定义,可以是自定义标签

  2、Page指令
  语法:
  <%@ page 属性1=”值1”  属性2=”值2” %>
  Page指令为容器提供当前页面的使用说明,一个JSP页面可以包含多个Page指令

  contentType:指定当前JSP页面的MIME类型和字符编码格式
  errorPage:指定当JSP页面发生异常的时候需要跳转到的错误处理页面
  isErrorPage:指定当前页面是否可以作为另外一个JSP页面的错误处理页面
  Import:导入需要使用的Java类
  Language:定义JSP页面所使用的脚本语言,默认是Java
  Session:指定页面是否使用session,默认为立即创建,为false标识使用时创建
  pageEncoding:指定JSP页面的解码格式

  3、Include指令
  语法:<%@ include file=”被包含的JSP文件” %>
  通过include指令包含其他文件,被包含的文件可以是JSP文件、HTML文件或者文本文件,要避免同名变量的定义冲突。

  4、Taglib 指令
  语法:<%@ taglib url=”外部标签库的路径” prefix=”前缀” %>,引入JSP的标准标签库

  5、作标签
  语法:<jsp:action name attribute=”value” />,指的是在JSP页面在运行期间的命令

  6、Include
  <jsp:include page=”” />,将外部文件的输出结果包含在当前的JSP中
  <%@ page include=”” %>是将外部文件的输出代码复制到当前的JSP当中

  7、useBean
  <jsp:useBean id=”name” class=”package.className” />
  用来加载一个将在JSP中使用的JavaBean
  在类加载后,可以通过jsp:setProperty和jsp:getProperty来设置或者获取bean的属性

  8、跳转指令

  <jsp:forward page=”A1.jsp”>
    <jsp:param name=”para1” value=”123” />
    <jsp:param name=”para2” value=”bbb” />
  </jsp:forward>

  A1.jsp接收参数

  <%
    String x1=(String)request.getParameter(“para1”);
    String x2=(Int)request.getParameter(“para2”);
  %>

  9、内置对象

对象名 类型 说明
request javax.servlet.http.HttpServletRequest
responsejavax.servlet.http.HttpServletResponse
sessionjavax.servlet.http.HttpSession有session=”true”开关
applicationjavax.servlet.ServletContext
config javax.servlet.ServletConfig
exception java.lang.Throwable有isErrorPage=”false”开关
outjavax.servlet.jsp.JspWriter javax.servlet.jsp.JspWriter
pageContentjavax.servlet.jsp.PageContext
pagejava.lang.Object,当前对象this当前servlet实例

  10、四大域对象

pageContentjavax.servlet.jsp.PageContent当前JSP页面范围
requestjavax.servlet.http.httpServletRequest一次请求有效
session javax.servlet.http.HttpSession一次会话有效(关闭浏览器失效)
application javax.servlet.ServletContext 整个web应用有效(服务器重启或者关闭失效)

  11、示例脚本

  ⑴ 、属性的设置与获取

<%
    pageContext.setAttribute("pageContextScope","x1");//设置属性值
    pageContext.setAttribute("pageContextScope","y1");
    String a1 =(String) pageContext.getAttribute("pageContextScope");//获取属性值
%>
<%= a1 %>

  ⑵、页面跳转与数据接收

<%
    pageContext.setAttribute("X1","111",pageContext.REQUEST_SCOPE);//request作用域有效
    pageContext.setAttribute("Y1","222",pageContext.SESSION_SCOPE);//session作用域有效
    pageContext.setAttribute("Z1","333",pageContext.APPLICATION_SCOPE);//application作用域有效
    response.sendRedirect(request.getContextPath()+"/other.jsp");    
%>

   参数接收:

<%
    String X1=(String) pageContext.getAttribute("X1",PageContext.REQUEST_SCOPE);
    String Y1=(String) pageContext.getAttribute("Y1",PageContext.SESSION_SCOPE);
    String Z1=(String) pageContext.getAttribute("Z1",PageContext.APPLICATION_SCOPE);
%>

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值