tomcat javaweb开发基础(三)
2013-05-11 15:59
387 查看
一:jsp基本语法
(1)首先介绍一下指令:
指令(directive)是向容器提供的关于JSP页面的总体信息。
指令是以<%@开头,以%>结束的标签。
指令有三种类型:page指令、include指令和taglib指令。三种指令的语法格式如下:
<%@ page attribute-list %>
<%@ include attribute-list %>
<%@ taglib attribute-list %>
(2)分别介绍一下这三种指令
一:page指令表示当前一个JSP页面。
主要功能:
设置MIME类型(content_type)
导包指令
(import)
其他指令:错误页 (errorPage,isErrorPage),禁止session
(session)
例子:
现在假设建立一个JSP页面,要求里面设置上中文。
范例:
<h1>中国,你好!</h1>
显示结果:
出现了乱码,原因是由于本身的额页面编码和显示的编码不一致造成的。所以此时,为了显示出正确的编码,就必须使用page指令,在页面进行加载的时候就已经设置好自己所需的编码方式。
<%@page contentType="text/html;charset=GBK"%>
<h1>中国,你好!</h1>
以上的MIME类型就表示整个页面按照HTML的风格显示,字符集是GBK
在顺便说其他的MIME类型
conf/web.xml:
<mime-mapping>
<extension>htm</extension>
<mime-type>text/html</mime-type>
</mime-mapping>
<mime-mapping>
<extension>html</extension>
<mime-type>text/html</mime-type>
</mime-mapping>
利用MIME类型的一个范例:
将一个JSP页面显示成一个word文档。
contentType只能设置一次。
最后说一下import属性:
import指令是page指令中唯一允许设置多次的属性
二:include指令
JSP可以通过include指令来包含其他文件的内容,被包含的文件可以是JSP文件也可以是HTML文件
在jsp中对于包含指令有两种语句形式:
@include指令
<jsp:include>动作
首先介绍一下@include指令:
此包含属于静态包含,可以包含任意的文件,当然只是把文件的内容包含进来
范例:content.htm
<h1>content.htm</h1>
content.txt
<h1>content.txt</h1>
content.inc
<h1>content.inc</h1>
包含以上的三个内容:
<h1>includedemo01.jsp</h1>
<%@includefile="content.htm"%>
<%@includefile="content.txt"%>
<%@includefile="content.inc"%>
再重点介绍一下jsp:include动作
此语句为动态包含,如果被包含的页面是JSP,则先处理之后再将结果包含,而如果包含的是非JSP文件,则实施把文件内容包含进来,功能与@include指令类似。
此动作有两种形式的语法:
语法一:
<jsp:includepage=“页面”/>
语法二:
<jsp:includepage=“页面”>
<jsp:paramname=“参数名称” value=“值”/>
.......
</jsp:include>
使用语法一完成和上面类似的功能
<h1>includedemo02.jsp</h1>
<jsp:include page="content.htm"/>
<jsp:include page="content.txt"/>
<jsp:include page="content.inc"/>
此时的运行结果与之前完全一样,因为被包含的页面之中,并没有任何的动态页面,所以功能与静态包含类似。
那么,如果此时被包含的页面是动态页面的话,除了可以包含之外,还可以传递参数。
使用语法二进行包含:
建立content.jsp文件,此文件可以接受参数
<h2><%=request.getParameter(“ref1”)%></h2>
<h2><%=request.getParameter(“ref2”)%></h2>
以上的页面要接受被包含页面中传递的两个参数,当然
建立includedemo03.jsp,同时向content.jsp文件中传递参数:
<h1>includedemo03.jsp</h1>
<jsp:includepage="content.jsp">
<jsp:param name="ref1" value="HELLO WORLD"/>
<jsp:param name="ref2" value="www.mldn.cn"/>
</jsp:include>
也可以向包含页面中传递变量
范例:includedemo04.jsp
<h1>includedemo04.jsp</h1>
<%!
publicstatic final String str = "www.mldn.cn" ;
%>
<jsp:includepage="content.jsp">
<jsp:param name="ref1" value="HELLO WORLD"/>
<jsp:param name="ref2" value="<%=str%>"/>
</jsp:include>
两种包含的区别:
(1)静态包含
重复定了变量i,因为静态包含是将全部内容包含进来之后,再一起处理,属于先包含后处理。
(2)动态包含:
动态包含是先将各个页面分别处理,处理完之后再将内容包含进来。
范例:动态包含
三:<jsp:forword>跳转动作
跳转动作,当一执行到此指令的时候,程序会无条件立刻跳转。此语句也属于标签指令形式,语法如下。
语法一:
<jsp:forward page=“页面"/>
语法二:
<jsp:forward page=“页面.jsp">
<jsp:param name=“参数名称” value=“值"/>
......
</jsp:forward>
范例:跳转
从页面的显示效果来看,页面已经完成了跳转,但是地址没有变化,因为此跳转属于服务器跳转,只要是服务器跳转,则地址栏永远没有变化。
当然,也可以向跳转页面中传递参数,同样使用request.getParameter()进行接收。
范例:
不得不说老师这课件做的太详细啊,我就顺着老师做的课件复习一下吧!
(1)首先介绍一下指令:
指令(directive)是向容器提供的关于JSP页面的总体信息。
指令是以<%@开头,以%>结束的标签。
指令有三种类型:page指令、include指令和taglib指令。三种指令的语法格式如下:
<%@ page attribute-list %>
<%@ include attribute-list %>
<%@ taglib attribute-list %>
(2)分别介绍一下这三种指令
一:page指令表示当前一个JSP页面。
主要功能:
设置MIME类型(content_type)
导包指令
(import)
其他指令:错误页 (errorPage,isErrorPage),禁止session
(session)
例子:
现在假设建立一个JSP页面,要求里面设置上中文。
范例:
<h1>中国,你好!</h1>
显示结果:
出现了乱码,原因是由于本身的额页面编码和显示的编码不一致造成的。所以此时,为了显示出正确的编码,就必须使用page指令,在页面进行加载的时候就已经设置好自己所需的编码方式。
<%@page contentType="text/html;charset=GBK"%>
<h1>中国,你好!</h1>
以上的MIME类型就表示整个页面按照HTML的风格显示,字符集是GBK
在顺便说其他的MIME类型
conf/web.xml:
<mime-mapping>
<extension>htm</extension>
<mime-type>text/html</mime-type>
</mime-mapping>
<mime-mapping>
<extension>html</extension>
<mime-type>text/html</mime-type>
</mime-mapping>
利用MIME类型的一个范例:
将一个JSP页面显示成一个word文档。
<%@ page contentType="application/msword"%> <% int row = 10 ; int col = 10 ; %> <table border="1" bordercolor="#3399FF" bgcolor="#663399"> <% for(int i=0;i<row;i++){ %> <tr> <% for(int j=0;j<col;j++){ %> <td><%=i * j%></td> <% } %> </tr> <% } %> </table>注意;
contentType只能设置一次。
最后说一下import属性:
import指令是page指令中唯一允许设置多次的属性
<%@page contentType="test/html;charset=GBK"%> <%@page import="java.sql.*"%> <%@page import="java.util.*,java.io.*"%> <h1>中国,你好!</h1>
二:include指令
JSP可以通过include指令来包含其他文件的内容,被包含的文件可以是JSP文件也可以是HTML文件
在jsp中对于包含指令有两种语句形式:
@include指令
<jsp:include>动作
首先介绍一下@include指令:
此包含属于静态包含,可以包含任意的文件,当然只是把文件的内容包含进来
范例:content.htm
<h1>content.htm</h1>
content.txt
<h1>content.txt</h1>
content.inc
<h1>content.inc</h1>
包含以上的三个内容:
<h1>includedemo01.jsp</h1>
<%@includefile="content.htm"%>
<%@includefile="content.txt"%>
<%@includefile="content.inc"%>
再重点介绍一下jsp:include动作
此语句为动态包含,如果被包含的页面是JSP,则先处理之后再将结果包含,而如果包含的是非JSP文件,则实施把文件内容包含进来,功能与@include指令类似。
此动作有两种形式的语法:
语法一:
<jsp:includepage=“页面”/>
语法二:
<jsp:includepage=“页面”>
<jsp:paramname=“参数名称” value=“值”/>
.......
</jsp:include>
使用语法一完成和上面类似的功能
<h1>includedemo02.jsp</h1>
<jsp:include page="content.htm"/>
<jsp:include page="content.txt"/>
<jsp:include page="content.inc"/>
此时的运行结果与之前完全一样,因为被包含的页面之中,并没有任何的动态页面,所以功能与静态包含类似。
那么,如果此时被包含的页面是动态页面的话,除了可以包含之外,还可以传递参数。
使用语法二进行包含:
建立content.jsp文件,此文件可以接受参数
<h2><%=request.getParameter(“ref1”)%></h2>
<h2><%=request.getParameter(“ref2”)%></h2>
以上的页面要接受被包含页面中传递的两个参数,当然
建立includedemo03.jsp,同时向content.jsp文件中传递参数:
<h1>includedemo03.jsp</h1>
<jsp:includepage="content.jsp">
<jsp:param name="ref1" value="HELLO WORLD"/>
<jsp:param name="ref2" value="www.mldn.cn"/>
</jsp:include>
也可以向包含页面中传递变量
范例:includedemo04.jsp
<h1>includedemo04.jsp</h1>
<%!
publicstatic final String str = "www.mldn.cn" ;
%>
<jsp:includepage="content.jsp">
<jsp:param name="ref1" value="HELLO WORLD"/>
<jsp:param name="ref2" value="<%=str%>"/>
</jsp:include>
两种包含的区别:
(1)静态包含
demo.jsp: <%@ page contentType="text/html;charset=GBK"%> <% int i = 1000 ; %> <h2>demo.jsp中的i的值为<%=i%></h2>使用@include包含内容
<%@ page contentType="text/html;charset=GBK"%> <h1>includedemo05.jsp</h1> <% int i = 10 ; %> <h2>includedemo05.jsp中的i的值为<%=i%></h2> <%@include file="demo.jsp"%>
重复定了变量i,因为静态包含是将全部内容包含进来之后,再一起处理,属于先包含后处理。
(2)动态包含:
动态包含是先将各个页面分别处理,处理完之后再将内容包含进来。
范例:动态包含
<%@ page contentType="text/html;charset=GBK"%> <h1>includedemo06.jsp</h1> <% int i = 10 ; %> <h2>includedemo06.jsp中的i的值为<%=i%></h2> <jsp:include page="demo.jsp"/>插入图片:
三:<jsp:forword>跳转动作
跳转动作,当一执行到此指令的时候,程序会无条件立刻跳转。此语句也属于标签指令形式,语法如下。
语法一:
<jsp:forward page=“页面"/>
语法二:
<jsp:forward page=“页面.jsp">
<jsp:param name=“参数名称” value=“值"/>
......
</jsp:forward>
范例:跳转
forwarddemo01.jsp <%@ page contentType="text/html;charset=GBK"%> <jsp:forward page="forwarddemo02.jsp"/> forwarddemo02.jsp: <%@ page contentType="text/html;charset=GBK"%> <h2>跳转之后的页面!</h2>
从页面的显示效果来看,页面已经完成了跳转,但是地址没有变化,因为此跳转属于服务器跳转,只要是服务器跳转,则地址栏永远没有变化。
当然,也可以向跳转页面中传递参数,同样使用request.getParameter()进行接收。
范例:
forwarddemo03.jsp: <%@ page contentType="text/html;charset=GBK"%> <jsp:forward page="forwarddemo04.jsp"> <jsp:param name="ref1" value="HELLO WORLD"/> <jsp:param name="ref2" value="www.mldn.cn"/> </jsp:forward>
forwarddemo04.jsp: <%@ page contentType="text/html;charset=GBK"%> <h2>跳转之后的页面!</h2> <h2><%=request.getParameter("ref1")%></h2> <h2><%=request.getParameter("ref2")%></h2>
不得不说老师这课件做的太详细啊,我就顺着老师做的课件复习一下吧!
相关文章推荐
- tomcat javaweb 开发基础(4)
- 使用tomcat+eclipse搭建javaweb基础开发环境
- javaweb开发基础及Tomcat服务器的简单使用、配置
- tomcat javaweb开发基础教程(二)
- JAVA web开发基础(五)、java sdk,eclipse,tomcat安装
- tomcat javaweb开发基础(8)servlet程序设计(1)
- tomcat javaweb开发基础(10servlet(3))
- tomcat javaweb开发基础(一)
- tomcat javaweb开发基础( 9 servlet(2))
- tomcat Javaweb开发基础(6承接五)
- 10001---JavaWeb开发基础--初识Tomcat
- 开发模式配置,不用每次重启tomcat,java web基础
- 1.JavaWEB 开发基础-JavaWEB_Tomcat 的安装和配置
- tomcat javaweb 开发基础(七接着六)
- Java web基础学习之开发环境篇(详解)
- Linux中Java的web项目开发环境配置(JDK1.7+Tomcat7+Mysql5.5+eclipse)
- 在Web应用中动态创建PDF文件-Java基础-Java-编程开发
- Java Web开发Tomcat中三种部署项目的方法
- JAVAWEB开发之Tomcat内置连接池的配置和使用、DbUtils的使用详解和案例、以及元数据详解
- Java Web开发Tomcat中三种部署项目的方法