由于对java的兴趣,我从一年前开始学习java深知初学者在遇到老鸟们看来的许多小问题是的焦急与痛苦。现在与大家来分享一下学习jsp的一些经验,由于水平有限,错误再所难免,望老鸟们不吝赐教,以求共同进步。
说是介绍jsp但由于其内容繁杂,我将只着重描述jsp tags的使用。但在这之前先简单
介绍一下jsp的基本知识,并且一切实现是在win2000环境下。
说了这么多,那么什么是jsp呢。jsp全称是java servlet page,是一种基于文本的件。
它像html,svg,wml,xml,一样可以显示静态内容,也可以像php,asp一样处理动态内容,如:database.
下面我们先来看看jsp长的什么样:
<%@ page contentType="text/html; charset=GBK" %>
<html>
<head>
<title>
hello
</title>
</head>
<h1>
<%= "hello the world" %> //**********
</h1>
<body bgcolor="#00ffff">
<B>Hello the world</B>
</body>
</html>
code 1
看起来是不是一点也不难,熟悉html的朋友一定很快就可以发现以上的代码与htm几乎完全一样只有打星的一行没见过。不过想也很容易猜出它的意思,无非将“hello the world"显示出来。也许有人要问,要显示静态内容直接用html不就可以实现了么。是的,但是从以上可以看出jsp对静态的显示也给出了一种替代方案,似乎也暗示了jsp(尤其是我将着重介绍的tag)的强大功能。随着学习的深入,这一点将变的明显。
jsp页面处理请求的过程和servlet是相似的(实际上每个jsp页面都会别编译成一个对应的servlet).所以jsp的生命周期取决于不同厂商实现servlet的方法。但有请求到达jsp页面时,将有与其对应的servlet处理。并且服务器将会自动比较jsp页面与其对应的servlet如果发现页面被更新了,其会自动编译新的页面(除非认为的改变服务器的设置).这对与编写和调试是十分方便的。
说到这很多人也许手早就痒痒了(嘻稀我也是的,每当学一门新东东时,我最烦的就是看了半天书还是什么也不会)。下面我们就来run一下刚才那个jsp页面。
如果你想使jsp能run起来,首先需要一个支持jsp的服务器程序。我推荐Tomcat,没有的朋友可以到http://jakarta.apache.org下载(是免费的)。当然jdk也是必不可少的(可到http://java.sun.com去下载)。安装完后你还需要设置环境变量——JAVA_HOME,它的值是你安装jdk的目录。设置后好重起机器。之后执行%CATALINA_HOME%/bin/startup(在WINDOWS下)。而后你可以在你的IE中打如:http://127.0.0.1:8080/如果见到了tomcat的index.html页面就说明你的安装没有问题了(注意由于tomcat要占据8080端口,所以在执行startup时,你必须保证8080端口没被占据)。
只做了这么一点你还是不能run一个jsp页的,你首先打开tomcat的安装目录,我的是D:/server/tomcat在它下面你会发现一个叫webapps的目录(我用的是tomcat4.0.1,不同版本可能有所不同,如果不同可参考tomcat提供的文档),在webapps下新建一个目录,如:home,再在home下建目录WEB-INF(这个目录是tomcat要求的,必须建立,并要注意大小写),而后在WEB-INF下建立名为web.xml的xml文件,
内容是:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
</web-app>
下面就是最后一步了。在home下建立一个名为jsp的目录,并在jsp下建立hello.jsp文件其内容就是code 1。而后重新启动tomcat,并在IE中打入http://127.0.0.1:8080/home/jsp/hello.jsp.bingo!你就可以看到胜利果实了。
好了今天就讲到这里好了。做了这么多事也应休息以下了。以后见。