JSP编程
1 jsp 进入 Java Server Pages
Servlet作用: 用java语言开发动态资源( java 流 )的技术.
JSP 作用:用java语言开发动态(java 流)+静态资源(html)的技术
2 JSP特征
JSP 必须交个tomcat服务器解析
JSP 可以写java代码和HTMl代码
3 JSP 执行的过程
1
2
tomcat中扫描到index.jsp文件
3
tomcat将index.jsp文件解析为index_jsp.java 文件
4
tomcat的JDK将 index_jsp.java转换字节码 index_jsp.class文件
5
tomcat构造和初始化index_jsp对象,其实可以理解为servlet对象
6
tomcat调用index_jsp.class中的service方法
7
tomcat的service方式会通过输出流返回HTML代码到浏览器
8
浏览器接收HTML 并且解析成页面效果显示
4 JSP生命周期
1> 翻译 jsp--->java文件
2 编译 java-->class文件( servlet程序)
3 构造方法(第一次访问)
4 _jspInit方法 (第一次访问)
5 _jspService方法
6_jspDestory() 方法
JSP语法
1 JSP 模板
JSP 页面中会自动添加HTML代码,该JSP是模板形式
2 JSP表达式
语法:
作用:向浏览器输出变量或者表示式通过计算后的结果
A 表达式的原理就是翻译成out.prin()流输出HTML/TEXT格式到页面。
B 表达后面是不需要用分号结束的。
3 JSP 脚本
语法:
作用:执行java代码
4JSP声明
语法:
作用:声明变量和方法 后面JAVA程序可以调用
5JSP注释
语法:
6 JSP 编译指令 编译前执行
语法:
1 include指令
在编译成.class文件之前,键将top.jsp里面的所有代码拷贝到当前位置
2 page指令
语法
作用:告诉tomcat如何翻译当前jsp文件
language="java" --使用的语言
import="java.util.*" --需要导入的类
pageEncoding="UTF-8" --jsp编码方式
contentType="text/html; charset=UTF-8" --tomcat将html流发送给浏览器的文件类型和编码方式
errorPage="error.jsp" --当前jsp页面解析错误的时候就会跳转到error.jsp去
isErrorPage="false" --当前页面是不是错误导向页面
%>
3 taglib指令
语法
作用:标签指令 用来解析标签效果
7 动作指令 编译后执行
用来实例化一个对象 对象名用id表示 class类路径
将一个对象中的属性赋值
取对象中属性的值
转发到另外的页面 直接跳转到指定的页面
包含编译后另外一个页面的信息
JSP 内置对象
九大内置对象
jsp
servlet
对象名
类型
使用范围
request
HttpServletRequest
请求 浏览器--->服务器
response
HttpServletResponse
返回 服务器--->浏览器
config
ServletConfig
用来获取web.xml中的信息
application
ServletContext
整个项目中的全局信息
exception
Thrawable
捕获异常 try/catch throws
page
this
当前对象,当前页面对象
out
JspWriter---->PrintWriter
当前页面输出流
pageContext
PageContext
当前页面的上下文,整个页面
Session
HttpSession
会话 浏览器和服务器通讯
1 out 对象 JspWriter 带缓冲的PrinterWriter 就是输出流
使用范围是当前页面,超出了当前页无效
PrinterWriter 直接向浏览器输出内容
JspWriter 向Jsp 缓冲区写内容
‘out.print()
‘out.println();
2 pageContext 对象 当前页面的上下文
使用范围是当前页面,超出了当前页无效
存值pageContext.setAttribute("username","zhangsan");
取值pageContext.getAttribute("username")
3 page==this 对象 一般用在编译指令中
4 request 请求 浏览器到服务器
当前请求存属性值
request.setAttribute("name","godyang");
当前请求取值
request.getAttribute("name")
请求传递参数
b.jsp
或者
取得请求参数的值
request.getParameter(参数名); request.getParameterValues(参数名)
5 reponse 返回 服务器返回到浏览器
获取返回流
PrintWriter out = response.getWriter();
返回内容形式
response.setContentType("text/html");
返回的编码
response.setCharacterEncoding("UTF-8");
页面重定向
response.sendRedirect("index.jsp");
浏览器端保存cookie对象
response.addCookie()
6 session 会话 浏览器和服务器通讯 当浏览器关闭的时候会话结束
当浏览器第一访问服务器的时候就会产生一个会话
保存会话信息
session.setAttribute("uname","abc");
获取会话信息
session.getAttribute("uname");
7 application 应用 tomcat启动的时候整个项目就是一个应用
当把值存入应用中,只有当tomcat关闭的时候才销毁
保存应用信息
application.setAttribute("app","appInfo");
获取应用信息
application.getAttribute("app");