本次给大家分享jsp技术,包含对jsp的简要介绍、基本语法、JSP指令、JSP隐式对象和JSP标签。
一、JSP概述
1.什么是JSP
JSP全名是Java Server Page,它是建立在Servlet规范之上的动态网页开发技术。
在JSP文件中,HTML代码与Java代码共同存在,其中,HTML代码用来实现网页中静态内容的显示,Java代码用来实现网页中动态内容的显示。为了与普通HTML有所区别,JSP文件的扩展名为 .jsp。
2.JSP运行原理
虽然在web.xml文件中没有与JSP相关的配置,但Web服务器仍然可以根据URL找到对应的JSP文件。这是因为在Tomcat服务器的web.xml(D:apache-tomcat-7.0.27confweb.xml)文件中实现了JSP的相关配置。
JSP文件也可以像Servlet程序一样,在web.xml文件中进行注册和映射虚拟路径。注册JSP页面的方式与Servlet类似,只需将元素修改为元素即可。
重新启动Tomcat,在浏览器地址栏中输入http://localhost:8080/chapter07/itcast同样能访问到simple.jsp文件。
3.分析JSP所生成的Servlet代码
当用户第一次访问JSP页面时,该页面都会被JspServlet翻译成一个Servlet源文件,然后将源文件编译为.class文件。
simple.jsp文件被翻译成的class文件和Servlet源文件分别是simple_jsp.class和simple_jsp.java。打开simple_jsp.java文件
simple.jsp文件翻译后的Servlet类名为simple_jsp,它继承了org.apache.jasper.runtime.HttpJspBase类。在Tomcat源文件中查看
二、JSP基本语法
1.JSP模板元素
JSP页面可以按照编写HTML页面的方式来编写,其中可以包含HTML文件的所有静态内容,在静态的HTML内容之中可以嵌套JSP的其他各种元素来产生动态内容和执行业务逻辑。JSP页面中的静态HTML内容称之为JSP模版元素。JSP模版元素定义了网页的基本骨架,即定义了页面的结构和外观。
2.JSP表达式
JSP表达式(expression)用于将程序数据输出到客户端,它将要输出的变量或者表达式直接封装在“”结尾的标记中。需要注意的是,JSP表达式中的变量或表达式后面不能有分号(;)
3.JSP脚本片段
JSP脚本片断是指嵌套在之中的一条或多条Java程序代码,这些Java代码必须严格遵守Java语法规范,否则编译会报错。需要注意的是,在一个JSP页面中,可以出现多个脚本片段,在两个或者多个脚本片段之间可以嵌套文本、HTML标记或其它JSP元素,并且这些脚本片段中的代码可以互相访问。
4.JSP声明
在声明的语法格式中,被声明的Java代码将被翻译到Servlet的_jspService()方法之外,即在JSP声明中定义的都是成员方法、成员变量、静态方法、静态变量、静态代码块等。
5.JSP注释
注释语法格式:
三、JSP指令
1. page指令的具体语法格式:
2. include指令
四、JSP隐式对象
五、JSP标签
在JSP页面中,为了把其它资源的输出内容插入到当前JSP页面的输出内容中,JSP技术提供了标签,标签的具体语法格式:
在JSP页面中,经常需要将请求转发给另外一个资源,这时,除了RequestDispatcher接口的forward()方法可以实现外,还可以通过标签来实现。标签的具体语法格式如下所示: