第3章jsp基础知识

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Content.txt的内容
Hello, world!
[示例2] IncludeHtml.jsp
l l l l l l l l l l
<%@page language=“java” contentType=“text/html;charset=gb2312”%> <html> <head> <title>包含html文件</title> </head> <body> 包含html文件,文件内容如下。<br> <%@include file=“content.html”%> </body> </html>
<jsp:setProperty name=“user” property=“username” value=“yang” />

<jsp:getProperty>:取得bean属性的值,以便在结果页中显示。
<jsp:userBean id=“user” scope=“session” class=“bookstore.model.user” /> <jsp:getProperty name=“user” property=“username” />
<%! String name=“admin” %>
例如:
表达式(<%= %>):符合jsp语法的表达式。例如:
<% String str=“hello”; %> <%=str%>
l
代码段(<% %>):符合java语法的代码段。例如:
<% for (int i=0;i<8;i++){ Out.println(i); } %>
Content.html的内容
<h1>Hello, world!</h1>
[示例3] IncludeJsp.jsp
<%@page language=“java” contentType=“text/html;charset=gb2312”%> <html> <head> <title>包含jsp文件</title> </head> <body> 包含jsp文件,文件内容如下。<br> <%@include file=“content.jsp”%> </body> </html>
l
可重用组件

l
使用标签简化页面开发

l
具有java的特点

Jsp的运行机制
1)用户访问jsp页面 2)服务器找到相应的页面 3)服务器将jsp转译成servlet 4)服务器将servlet编译为字节码 5)服务器将字节码加载到内存并运行 6)服务器将字节码运行后生成的html代码发送给客户 端,浏览器显示页面。 如果jsp页面是第一次执行,要经过两个阶段(转 译阶段和请求阶段),如果不是第一次执行,只会执 行请求阶段,速度要快很多。
l
l
Include指令:用于包含一个文本或代码的文件,属于静 态包含。(先包含再处理) <%@ include file=“/bookstore/common/top.jsp” %> taglib指令:用来引用标签,uri指明标签库文件的存放位 置,prefix指明标签使用的前缀。 <%@ taglib uri=“/struts­tags” prefix=“s” %>
课程:J2EE与中间件
第三章 jsp基础知识
学习内容
l Jsp概述 l Jsp的基本语法 l l l l l
指令元素 脚本元素 动作元素 内置对象 用户登录系统
Jsp概述
JSP是java server pages的缩写,是由 sun公司于1999年6月推出的技术,通过在传 统的html中插入jsp脚本代码从而构成jsp页面。 Jsp是基于java servlet及整理个java体系的 web开发技术。可以利用这一技术来构建安全 的、跨平台的动态网站。 asp的编程语言是vbscript和javascript,而 jsp使用的是java。
Jsp的基本语法
jsp=html+java片段+jsp标签+javascript(css) jsp功能的强大是因为可以与javabeans结合使 用 jsp+javabean的基础上再结合servlet,就 会构成mvc的开发模式,mvc模式是目前软件 公司中相当通用的开发模式。
一个较完整的jsp文件通常由以下几部分组成
标签 Jsp注释
3.Jsp动作元素
l Biblioteka Baidu
Jsp动作元素可以用来动态地包含文件、网页跳转及使用javabeans组 件等。 <jsp:forward>:实现跳转 <jsp:forward page=“/common/top.jsp”> <jsp:useBean>:调用或创建一个指定名字和使用范围的bean.
编写一个简单的jsp文件
<html> <head> <title>hellojsp</title> </head> <body> <% out.println(“hello,jsp!”); %> </body> </html> ※保存在prj_test目录中,访问:http://localhost:8080/prj_test/hello.jsp ※运行后,打开tomcat安装目录下的work目录,在该目录中可以找到与该 jsp文件相对应的java文件及编译后的class文件。
Page指令
<%@ page language=“java” import=“java.util.*” %> <html> <head> <title>import示例</title> </head> Java片段 <body> <% Date now=new Date(); //声明一个date实例化对象 out.println(now); //输出当前时间 %> </body> Java注释 </html>
常用的JSTL标签库(可参考jstl标签库.doc文档)
javaee5.0类库已经自带了jstl相关的jar包。不需 要再添加,可以直接使用jstl。
l
l
l l l
核心标签库:http://java.sun.com/jsp/jstl/core包含 Web 应用的常见工作,比如:循环、表达式赋值、基本 输入输出等。 格式化标签库:http://java.sun.com/jsp/jstl/fmt用来格 式化显示数据的工作,比如:对不同区域的日期格式化 等。 XML 标签库:http://java.sun.com/jsp/jstl/xml用来访 问 XML 文件的工作,这是 JSTL 标签库的一个特点。 函数标签库:http://java.sun.com/jsp/jstl/functions 用 来读取已经定义的某个函数。 数据库标签库:http://java.sun.com/jsp/jstl/sql可以做 访问数据库的工作。
l
<jsp:include>:在jsp文件中包含一个静态或动态的文件,属动态包含。 (先处理再包含) <jsp:include page=“/common/top.jsp” /> <jsp:param>:用来传递参数,一般与<jsp:include>、<jsp:forward>联 合使用 <jsp:param name=“参数名” value=“参数值”>
<jsp:useBean id=“user” scope=“page” class=“bookstore.model.user”>

l
<jsp:setProperty>:设置bean的一个或多个属性值。
<jsp:setProperty name=“user” property=“*” /> <jsp:setProperty name=“user” property=“username” />
Taglib指令
[示例5]
<%@ page contentType=“text/html;charset=gb2312”%> <%­­声明页面中将要引用的标签库­­%> <%@ taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core” %> <html> <head> <title>taglib指令使用示例</title> Jsp注释 </head> <body> <%­­使用JSTL标签输出字符串­­%> <c:out value=“hello,world!” /> </body> </html>
Jsp的特点
l
程序逻辑和显示分离

Web开发人员使用html或xml来设计界面,使用jsp标记或脚本生成 页面上的动态内容,动态内容的逻辑被封装在标记和javabeans组件 中,并被捆绑在脚本中,所有的脚本都在服务器端运行。 绝大多数jsp页面依赖于可重用的、跨平台的组件(javabeans或 EJB)来执行应用程序要求的复杂处理。开发人员可以共享和交换 组件。 Jsp技术封装了许多功能,这些功能是生成与jsp相关的html或xml的 动态内容所需要的。标准的jsp标记能够访问和实例化javabeans组 件,设置或检索组件的属性,下载applet,以及执行使用其他方法难 以实现的功能。Jsp标记具有可扩展性,允许开发者扩展jsp标记, 开发人员能够定制常用功能标记库。 Jsp页面的内置脚本是基于java语言的,而且所有的jsp页面都被转 译成servlet,所以具有java的特点,跨平台,一次编写,各处运行的 特点。
l
l
<jsp:plugin>动作元素:用来在jsp中嵌入java插件,比 如applet。通常与<jsp:params>和<jsp:fallback>一起 使用。
<jsp:plugin type=“bean|applet” name=“applet名称” code=“java类名” codebase=“java类所在的目录” align=“对齐方式” height=“高度” width=“宽度” hspace=“水平间距” vspace=“垂直间距” aarchive=“预先加载的类列表” jreversion=“jre版本” iepluginurl=“url” nspluginurl=“url” </jsp:plugin>
1.JSP基本元素
l l l l l
Html注释(<!­­ ­­>):在客户端显示的注释。 例如:<!­­ ­­> Jsp注释(<%­­ ­­%>):不能在客户端显示的注释。例如:<%­­声明变
量a­­%>
Html代码 例如:<html>,<body> 变量声明(<%! %>):用于声明jsp中的合法变量和方法。
2.Jsp指令元素
主要用来提供整个jsp页面的相关信息和设置jsp页面的相关属 性,如设置网页的编码方式、脚本语言以及包含外部文件等。 l Page指令:定义整个jsp页面的全局属性。例如: 设置格式及编码 <%@ page contentType=“text/html;charset=gb2312” %> 设置编码 <%@ page pageEncoding=“gb2312” %> 导包 <%@ page import=“java.sql.*,java.lang.*” %> 设置错误处理页 <%@ page errorPage=“error.jsp” %> 还包含以下属性: extends、session、buffer、autoflush、isThreadSafe、info、 isErrorPage等
Content.jsp的内容
<%@page import=“java.util.*”%> <%=new Date()%>
示例3的代码第8行通过使用include指令包含 content.jsp文件,当jsp执行到第8行时就会 执行content.jsp文件的内容,并最终显示在 页面上。
[示例4]
[示例1] IncludeTxt.jsp
<%@page language=“java” contentType=“text/html;charset=gb2312”%> <html> <head> <title>包含文本文件</title> </head> <body> 包含文本文件,文件内容如下。<br> <%@include file=“content.txt”%> </body> </html>
相关文档
最新文档