Tomcat中JSP配置与实例详解

需积分: 16 0 下载量 137 浏览量 更新于2024-11-02 收藏 413KB PDF 举报
"jsp实例演示.pdf,讲解了JSP的基础知识,包括如何在Tomcat服务器上配置JSP,以及JSP中的变量声明与Java静态变量的等价性,并给出了相关的代码示例。 在JSP(JavaServer Pages)技术中,开发者可以使用HTML、CSS和JavaScript来创建动态网页,同时嵌入Java代码来处理服务器端逻辑。本实例演示了如何在Apache Tomcat服务器上部署和运行一个简单的JSP页面。 首先,JSP文件被放置在Tomcat的webapps目录下的特定路径中。例如,一个名为`test.jsp`的文件可以放在`ROOT`目录下,即`D:\apache-tomcat-6.0.24\webapps\ROOT`。然后,用户可以通过在浏览器中输入相应的URL来访问这个页面,例如`http://localhost:8080/test.jsp`。如果JSP文件放在`examples`目录下,URL则应为`http://localhost:8080/examples/test.jsp`。对于自定义的Web应用目录,如`myapps`,需要确保有`WEB-INF`子目录,内含`web.xml`配置文件,才能正确运行。 当JSP页面被请求时,Tomcat会将JSP转换成对应的Servlet(在这里是`test_jsp.java`),然后编译成`.class`文件,存储在`work`目录下的相应路径。这样,每次HTTP请求都会触发这个Servlet的执行。 在JSP中,使用`<%@page ... %>`指令可以设置页面的属性,比如设置字符编码。在示例中,`contentType="text/html;charset=GB2312"`表示响应的内容类型为HTML,字符编码为GB2312。`<%@page import="java.util.*"%>`则导入了Java的`util`包,允许在页面中使用集合类等。 关于JSP中的变量声明,它们与Java的静态变量有类似的行为。如果在JSP中声明了一个全局变量,如`<%! int number = 0; %>`,那么这个变量对所有用户来说都是共享的。这意味着,当多个用户同时访问这个页面时,他们会共享同一个`number`变量,一个用户的操作(如通过调用`synchronized void countPeople()`方法增加`number`)会影响到其他用户看到的结果。这样的变量初始化只在JSP页面加载时执行一次,因此其初始化行为是线程安全的。 JSP中的方法声明同样可以实现类似的功能。例如,`countPeople()`方法在JSP中声明并同步,以确保在多用户环境下对`number`的修改是安全的。但是,这样的设计可能会导致性能问题,因为同步操作可能成为并发访问的瓶颈。 这个JSP实例演示了基本的JSP部署、运行流程,以及JSP中的变量声明和方法声明的特性,帮助初学者快速理解JSP的工作原理和使用方式。