jsp学习笔记

========================================
JSP概述
JSP是Java Server Page的缩写。是由sun Microsystems公司倡导的、许多公司参与一起建立的一种动态网页技术标准。

JSP可以看做Servlet的扩展,在没有JSP之前,就已经出现了Servlet技术。Servlet是利用输出流动态生成HTML页面,包括每一个HTML标签和所有在HTML页面中出现的内容。

由于包括大量的HTML标签、大量的静态文本及格式等,导致Servlet的开发效率极为低下。所有的表现逻辑,包括布局、色彩及图像等,都必须耦合在Java代码中,这的确让人不胜其烦。JSP的出现弥补了这种不足,JSP通过在标准的HTML页面中嵌入Java代码,其静态的部分无须Java程序控制,只有那些需要从数据库读取或需要动态生成的页面内容,才使用Java脚本控制。

从上面介绍可以看出,JSP页面的内容由2个部分组成:

静态部分:标准的HTML标签、静态的页面内容,这些内容与静态HTML页面相同。

动态部分:受Java程序控制的内容,这些内容由Java程序来动态生成。

JSP基于强大的Java语言,具有良好的伸缩性。以下简单的JSP示例:




time

<%=new java.util.Date()%>



========================================
JSP运行过程
1,JSP文件先要翻译成Java文件(Servlet),在tomcat中翻译后的java文件在tomcat下的work\Catalina\localhost中相应名字的应用目录里。

2,编译Java文件

3,运行.class文件

========================================
JSP的注释

HTML注释:


在JSP注释中可以使用HTML注释。使用时需要注意如下几点:
(1)HTML注释会在客户端输出;
(2)HTML注释内可以放置JSP表达式,
(3)不要使用HTML注释来注释java代码段,不会起到任何作用的,java代码段照常运行。



运行以上JSP程序,console中还是会有输出:hello world

JSP注释:

<%-- comment -->

被JSP注释标记的字符会在JSP编译时被忽略。

以下是一个示例:

<%-- <% System.out.println("hello world"); %>
–%>

示例2:

<%-- hello <%="darkmi"%>
–%>

运行以上JSP程序,console中不会有任何输出,点击网页右键查看源代码也不会找到任何蛛丝马迹。

JSP注释可以用来注释掉任何JSP表达式、java代码段、JSP操作指令集JSP动作指令。

========================================
JSP声明
JSP声明用于在JSP中声明变量和方法。在JSP声明中声明方法看起来很特别,似乎没有类,只有方法定义,方法似乎可以脱离类独立存在。实际上,JSP声明将会转换成Servlet的成员变量或成员方法,因此JSP声明依然符合Java语法。

由于JSP声明语法定义的变量和方法对应于Servlet的成员变量和方法,所以JSP声明部分定义的变量和方法可以使用private、public等访问控制符修饰,也可使用static修饰,将其变成类属性和类方法。但不能使用abstract修饰声明部分的方法,因为抽象方法将导致JSP对应Servlet变成抽象类,从而导致无法实例化。

JSP声明的语法格式如下:


<%!declaration;[declaration] %>

========================================
JSP表达式
JSP表达式提供了一种输出表达式值的简单方法,JSP表达式的语法格式如下:


<%=expression%>

注意:
(1)表达式结尾不能有分号;
(2)可以使用任何java语言所允许使用的任何表达式;
(3)表达式的值会被转化为string类型进行输出。

以下是一个示例:



JSP Expression Page

JSP Expression Page

Ex1: What is 3+3? <%= 3+3 %>
Ex2: What is 2*3? <%= 2*3 %>
Ex3: Can I combine them? <%= (2*3) + (3+3) %>
Ex4: Add a string? <%= "Here is some text " + (2*3) + (3+3) %>
Ex5: Add a string? <%= "Here is some text " + ((2*3) + (3+3)) %>
<%! String aString = "What is two times 3? "; %>
<%! int x = 2; %>
<%! int y = 3; %>
Ex6: Let’s use variables: <%= aString + (x*y) %>



输出如下:

JSP Expression Page
Ex1: What is 3+3? 6
Ex2: What is 2*3? 6
Ex3: Can I combine them? 12
Ex4: Add a string? Here is some text 66
Ex5: Add a string? Here is some text 12
Ex6: Let’s use variables: What is two times 3? 6

该示例来自:http://www.abbeyworkshop.com/howto/java/jspexpress/index.html

========================================

此条目发表在java/j2ee分类目录,贴了标签。将固定链接加入收藏夹。

发表评论

您的电子邮箱地址不会被公开。

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据