hooyantsing's Blog

第64次课程

字数统计: 1.1k阅读时长: 5 min
2019/10/14

源辰76班

第64次课程

10.14.2019

内容

JSP动态交互技术[廖彦]

1.要点

JSP语法元素

JSP脚本:一段java代码

JSP表达式:java表达式,必须有返回结果

JSP内置对象

    1.请求对象    request(用于接收浏览器的信息)

    2.响应对象    response (用于输出信息给浏览器)

    3.会话对象    session (交互)

    4.应用上下文对象  application (工程的环境)

    5.页面上下文对象  pageContext (页面的环境)

    6.页面输出流    out (JSP脚本输出内容)

7.配置对象    config (跟Servlet有关)

    8.页面对象    page      (最没用的)

    9.异常对象    exception  (需要将页面设置为错误页面才可以调用方法)

JSP指令

    1.page指令:用于设置页面属性

    errorPage = “url”    (用于设定如果jsp页面出现异常,将会跳转到url目标页面)

    isErrorPage = “true” (用户用于设置当前页面是错误页面,可使用exception对象及方法)

    2.include指令:用于将子页面导入到当前页面

    3.taglib指令

2.JSP脚本和JSP表达式的区别

01.jsp

|<%@**page** import=”java.util.Date”%>

<%@ page language=”java” contentType=”text/html; charset=utf-8”

pageEncoding=”utf-8”%>

<!**DOCTYPE** html PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “http://www.w3.org/TR/html4/loose.dtd“>

<**html**>

<**head**>

<**meta** http-equiv=_”Content-Type”_ content=_”text/html; charset=utf-8”_>

<**title**>Insert title here</**title**>

</**head**>

<**body**>

<%

int i = 100;

Date date = new Date();

%>

当前日期:<%=date %><**br**>

当前日期:<%=**new** SimpleDateFormat(“yyyy年MM月dd日 HH:mm:ss”).format(date) %><**br**>

</**body**>

</**html**>
<%@|

3.request对象、exception对象和page指令、include指令

hello.jsp

主页面

request对象的应用

page指令errorPage = “url”

include指令

|<%@**page** import=”java.util.Date”%>

<%@**page** import=”java.util.Calendar”%>

<%@ page language=”java” contentType=”text/html; charset=utf-8”

pageEncoding=”utf-8”

errorPage=”error.jsp”%>

<!**DOCTYPE** html PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “http://www.w3.org/TR/html4/loose.dtd“>

<**html**>

<**head**>

<**meta** http-equiv=_”Content-Type”_ content=_”text/html; charset=utf-8”_>

<**title**>Insert title here</**title**>

</**head**>

<**body**>

<**p**>127.0.0.1/191013_Tomcat/1014/hello.jsp?name=张三&sex=男&age=16</**p**>

<**p**>URL地址格式:http://127.0.0.1:80/工程名/资源路径(目录+文件名)?参数名=变量值  &多参隔开</**p**>

<%

//request 请求对象

//URL内的参数整体放入request对象中,可以使用getParameter方法传入参数名获取其中的对应的参数值。

String name = request.getParameter(“name”);

int age = Integer.parseInt(request.getParameter(“age”));

Calendar c = Calendar.getInstance();

c.add(Calendar.YEAR, -age);

Date date = c.getTime();

%>

姓名:<%=name %><**br**>

性别:<%=request.getParameter(“sex”) %><**br**>

年龄:<%=age %><**br**>

出生年份:<%=**new** SimpleDateFormat(“yyyy年”).format(date) %><**br**>

<%**if**(age<=14){ %>

<**img** src=_”xjj.jpg”_ height=_”200px”_>

<%}**else**{ %>

<**img** src=_”xjj_freedom.jpg”_ height=_”200px”_>

<%} %>

<**h1**>海盗旗</**h1**>

<%**for**(**int** i=0;i<5;i++){ %>

<%**for**(**int** j=0;j<=i;j++){ %>

<%=”*” %>

<%} %>

<%=”
“ %>

<%} %>

<%@**include** file=”sub.jsp” %>

</**body**>

</**html**>
<%@|

sub.jsp

子页面

注意:子页面将默认生成的标签删除,以免拼接到主页面时出现标签重复异常

| pageEncoding=”utf-8”%>

<!**DOCTYPE** html PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “http://www.w3.org/TR/html4/loose.dtd“>

<**p**>这是一个子页面</**p**>
<%@|

error.jsp

错误页面

page指令isErrorPage=”true”

注意:当参数为true时,JSP对象exception才可以调用方法

| pageEncoding=”utf-8” isErrorPage=”true”%>

<!**DOCTYPE** html PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “http://www.w3.org/TR/html4/loose.dtd“>

<**html**>

<**head**>

<**meta** http-equiv=_”Content-Type”_ content=_”text/html; charset=ISO-8859-1”_>

<**title**>Insert title here</**title**>

</**head**>

<**body**>

<**h1**>这是一个错误页面</**h1**>

    错误信息:<%=exception.getMessage() %>

</**body**>

</**html**>
<%@|

CATALOG