一、jsp简介
1、jsp三大指令
page指令:<%@page 属性=”” %>,位于jsp页面顶端,可以有多个
1 | <%@ page contentType="text/html;charset=UTF-8" language="java" import="java.text.*"%> |
taglib指令:标签库
include
include指令:<%@include file="date.jsp"%>
include动作:<jsp:include page="url" flush="true|false"/>
page:要包含的页面,
flush:被包含的页面是否从缓冲区读取
include指令与include动作的区别:
forward动作:<jsp: forward page="url"/>
等同于:request.getRequestDispatcher("/url").forward(request,response);
param动作:<jsp:param name="参数名" value="参数值">
常与
1 | <jsp:forward page="user.jsp"> |
2、jsp注释
- html的注释
- jsp的注释
<%– jsp注释 –>(客户端不可见) - jsp脚本注释:
//单行
/ / 多行
3、jsp脚本
<% java代码 %>
4、jsp声明变量或方法
<%! java代码 %>
5、jsp表达式
<%=表达式 %> ps:不可;分号结束
6、jsp页面的生命周期
二、jsp内置对象
九大内置对象:out
,request
,response
,session
,application
,Page
,pageContext
,exception
,config
out
1 |
|
request
1 |
|
response
1 |
|
请求转发和请求重定向的区别:
session
HttpSession的实例,周期:在第一个jsp页面被加载时自动创建,即浏览器连接到服务器开始,关闭浏览器离开这个服务器结束,在服务器的几个页面之间切换,服务器应当知道这是一个客户,就可以用session对象
1 |
|
application
实现用户间数据的共享,可存放全局边变量,相当于java的静态变量
1 |
|
page、pageContext
1 | <h3>page:</h3>当前page页面的字符串描述:<%=page.toString()%><br><br> |
exception
1 |
|
三、jsp使用Javabean
1. Javabean的设计原则
- 必须是公有类
- 必须包含无参构造方法
- 属性私有
- 用getter()和setter()进行封装
例如:
1 |
|
2. 存取Javabean有关的jsp动作元素
在jsp页面中使用Javabeans:
方法一:像使用普通java类一样,创建Javabean实例
方法二:在jsp页面中通常使用jsp动作标签使用javabean,常用的动作标签:userBeans、setProperty、getProperty
<jsp:useBeans>
在jsp页面中实例化或者在指定范围内使用Javabean:
<jsp:useBeans id="标示符" class="java类名" scope="作用范围"/>
scope属性:指定Javabean的作用范围
page:当前页面,重定向和转发都无效
request:可通过HttpRequest.getAttribute()取得Javabean对象,重定向无效,转发有效
session:可通过HttpSession.getAttribute()取得Javabean对象,同个会话有效
application:可通过application.getAttribute()取得Javabean对象,不同会话都有效
例如:1
2
3<jsp:useBean id="myUsers" class="com.po.Users" scope="application"></jsp:useBean>
用户名:<jsp:getProperty name="myUsers" property="username"></jsp:getProperty>
密码:<jsp:getProperty name="myUsers" property="password"></jsp:getProperty>
也可使用内置对象获取:1
2用户名:<%=((Users)application.getAttribute("myUsers")).getUsername()%>
密码: <%=((Users) application.getAttribute("myUsers")).getPassword()%>
<jsp:setProperty>
1 | 根据表单自动匹配所有属性: |
<jsp:getProperty>
1 | 使用getProperty获取属性值: |