【JavaEE】jsp学习笔记

来源:互联网 发布:java购物系统 编辑:程序博客网 时间:2024/06/07 01:16

1.jsp脚本和注释

脚本:

①<%java代码  %>-----内部的java代码翻译到service方法的内部(局域代码)

②<%=变量或表达式> ----内部的service的out.print()

③<%!java代码%>-----翻译在放在内部的成员位置,该页面的全局变量,可以写方法

注释:

①html注释:<!-- 内容--> 可见范围jsp源码和翻译后的servlet和页面显示的html源码也会有

②java注释://单行注释  可见范围jsp源码和翻译后的servlet可见

/* 多行注释*/

/**  多行注释*/

③jsp注释:<%--注释内容--%>可见范围jsp源码

2.jsp运行原理

本质就是servlet

过程:

第一次访问--->.jsp--->_jsp.java--->编译运行(被翻译的servlet在tomcat下work下可以找到)

3.jsp指令

1)page指令(属性最多的指令(实际开发中默认即可))

格式:<%@ page name=value name=value%>

常用属性:

①language:jsp脚本中可以嵌入的脚本语言("java")(写与不写都一样)

②contentType="text/html;charset=UTF-8"

③pageEncoding="UTF-8"当前jsp文件源码本身的编码(contentType不写的话就默认这个编码)

④session="true" :jsp可以直接使用session(默认true),即是否自动创建session

⑤extends="包"(很少用)

⑥import="导包",导入java包

⑦errorPage="" //当前页面发生错误的时候跳转的页面

⑧isErrorPage="true" 标识当前页面是错误页面()

<!-- 设置web应用的全局错误页面 -->

  <error-page>
  <error-code>404</error-code>
  <location>/error.jsp</location>
  </error-page>

2)include指令

页面(静态)包含,江一个jsp页面包含另一个jsp页面当中,格式:<%@ include file="被包含的文件地址"%>

3)taglib指令

在jsp页面中引入标签库(jstl标签库,struts2标签库)

格式:<%@ tagliib uri="" prefix="c"%> .使用c标签的时候,<c:if></c:if>

4.jsp内置对象(9个)

1)session

2)request

3)pageContext-----页面上下文

①本身是一个域对象

setAttribute(name,obj)

getAttribute(name)

removeAttribute(name)

setAttribute(name,obj,scope)可以向指定的其他域存储数据

<%//使用pageContext向request域存储数据request.setAttribute("name", "value");pageContext.setAttribute("name", "value1",PageContext.REQUEST_SCOPE);pageContext.setAttribute("name", "value2",PageContext.SESSION_SCOPE);pageContext.setAttribute("name", "value3",PageContext.APPLICATION_SCOPE);%><%= pageContext.getAttribute("name",PageContext.SESSION_SCOPE)%><%=pageContext.findAttribute("name") %><!-- 从小到大搜索域 的name pageContext域  < request域  < session域  < application域-->
②可以获得其他八大隐式对象

getRequest()

getOut()

4)application-------servletCntext 所有用户信息共享

5) out---------页面输出内容

类型是:JspWriter。 out.write()

Tomcat引擎从response缓冲区获得内容。out缓冲区要刷新到response缓冲区。(out默认缓冲区buffer大小默认8kb,如果设置为0,则直接写道response缓冲区)

6) config

7) page----当前对象

8) response

9)exception-------getMessage()获得上个页面出错的信息

-------四大作用域

page域:当前jsp页面(pageContext域)

request域:一次请求

session域:一次会话

application域:整个web引用

5.jsp标签

1)页面包含(动态包含):<jsp:include page="被包含的页面"/>

2)请求转发:<jsp:forward page="要转发到的资源"/>

原创粉丝点击