0x01 jsp的指令标签
<%@page %> 定义网页依赖属性,比如脚本语言、error页面、缓存需求等等。
<%@include%> 包含其他文件。包含的文件就好像是该JSP文件的一部分,会被同时编译执行。
<%@taglib%> 引入标签库的定义。
0x02 jsp的动作标签
与存取javabean有关(3只)
jsp:usebean 加载一个将在JSP页面中使用的JavaBean。
jsp:setProperty 设置已经实例化的Bean对象的属性
第一种:
1 | 用法: |
第二种:
1 | 用法: |
name和property是必须的,前者选择要用哪个bean,一般是usebean的id属性,后者表示是要设置的变量名。
jsp:getProperty获取Bean的属性的值并将之转化为一个字符串,将其插入到页面中
1 | <jsp:getProperty name="someName" property="someProperty"> |
基本动作元素(6只)
jsp:include 包含静态和动态的文件。 插入文件的时间是在页面被请求的时候。
1 | <jsp:include file="xx.jsp" flush="true"> |
jsp:forward 把请求转到另外的页面。
1 | <jsp:forward page="相对 URL 地址" /> |
jsp:plugin用来在JSP中嵌入Java插件
1 | <jsp:plugin> |
1 | <jsp:plugin> |
jsp:fallback用来指定当浏览器不支持或者无法启动Bean或Applet时,在页面上打印输出错误提示信息。
1 | <jsp:plugin> |
与JSP Document相关(6只)
jsp:root
jsp:declaration
jsp:scriptlet
jsp:expression
jsp:text
jsp:output
与动态生成XML标签有关(3只)
jsp:attribute
jsp:body
jsp:element
与Tag File有关(2只)
jsp:invoke
jsp:dobody
#0x03 jsp内置对象
request对象
来自客户端的请求,经过servlet容器处理后,由request对象进行封装
javax.servlet.http.HttpServletRequest类的实例
1 | request.getParameter(key) 获取表单提交的相应key的值 (<% String name = request.getParameter("name");>) |
response对象
封装了JSP响应,将响应发送回客户端
javax.servlet.http.HttpServletResponse类的实例
1 | response.setContentType("text/plain;charset=utf-8") 设置响应的MIME类型 |
session对象
表示一个会话,用来保存用户的信息,以便跟踪用户,存在服务端,直到关闭网站或者注销账户,可以在浏览器浏览器之间切换,共享数据
作用域:session
javax.servlet.http.HttpSession类的实例
1 | session.getid() 获取session的id号,该id号由tomcat自动分配 |
cookie对象
cookie对象不是jsp的内置对象,需要构造,不过因为跟session很相似,就放在这边说了。
1 | Cookie[] cookies = request.getCookie(); |
application对象
用户间数据的共享,全局变量
javax.servlet.ServletContext类的实例,代表着整个jsp页面
1 | application.setAttribute(key.object) |
config对象
javax.servlet.ServletConfig类的实例,这个对象允许开发者访问Servlet或者JSP引擎的初始化参数,比如文件路径等。
page对象 这个对象就是页面实例的引用。它可以被看做是整个JSP页面的代表。page 对象就是this对象的同义词。
page context对象
exception对象
out对象
javax.servlet.jsp.JspWriter 类的实例,用来在response对象中写入内容。
作用域:page,也就是说每个page都有一个out对象
1 | out.print() 输出 |
0x03 javabeans
javabeans就是符合某种特性的java类,减少代码重复
创建javabeans实例
放到src的com.po包中:
1 | package com.po; |
使用javabeans实例
1 | <%@page import="com.po.Users"%> |