My JSP的基础示例 |
本文标签:MyJSP 安装和测试Tomcat 对web开发人员而言,最中要的目录是webapps,浏览器要读取的文件都存放在这里 。我们首要的目标是让Tomcat能运作,在运行Tomcat之前,必须先设定环境变量: 运行Tomcat 。现在,Tomcat在运行了,打开浏览器,连接到http://localhost:8080,应该会打开Tomcat的欢迎页面 。这个URL里头的“localhost”就是指本地的网页服务器(对应到IP地址127.0.0.1),而8080是端口号,网页服务器通常是用80端口,但是Tomcat为类避免和其他服务器冲突,于是改用8080 。 建立新的Web服务器目录: 可以将Tomcat服务器所在计算机的某个目录设置为一个Web服务目录,并为该Web服务目录指定虚拟目录,即隐藏Web服务目录的实际位置,用户只能通过虚拟目录访问Web服务目录中的Jsp页面 。通过修改Tomcat服务器安装目录下conf目录中的server.xml文件来设置新的Web服务器目录 。假设要将D:\MyJsp\star和C:\sun作为Web服务目录,并让用户分别使用hello和moon虚拟目录访问web服务目录D:\MyJsp\star和C:\sun下的Jsp页面,应先应用记事本打开文件夹Tomcat\conf中的主配置文件server.xml,找到出现的部分(server.xml文件尾部),然后在的前面加入如下内容: 主配置文件server.xml修改后,必须重新启动Tomcat服务器 。这样,用户就可以将JSP页面存放到目录D:\MyJsp\star或C:\sun中,可以通过虚拟目录hello或moon访问JSP页面,如将A.jsp放在目录D:\MyJsp\star或C:\sun中,应在浏览器地址栏中输入http://127.0.0.1:8080/hello/A.jsp或http://127.0.0.1:8080/moon/A.jsp 。 设置端口号: 将其中的port=”8080”更改为新的端口号既可,如改为”9080”等 。如果Tomcat服务器所在的计算机没有启动其他占有端口80的网络程序,也可以将Tomcat服务器端口号设置为80,这样用户在访问JSP页面时可以省略端口号,”http://127.0.0.1/first.jsp” 。(这样写是因为我们是把firt.jsp非那根在ROOT根目录中,所以没有顶级目录,直接就是页面文件) 开发JSP: 以eclipse来编写不需要编译的JSP文件按,是最简单的 。这些文件可以把java程序包在“小脚本元素”(Scriptlet element)、“声明元素”(declaration element)以及“表达式元素”(expression element) 。最常用的是小脚本元素,可以把好几行的java程序包起来 。小脚本元素的开头和结尾是“<%”和“%>”这两种标记符号,例如下例 。你可以用out对象的println()方法把文字送回给浏览器 。示例代码myJsp.jsp:
要怎么安装myJsp.jsp,Tomcat才能将之提供给客户端的浏览器?示例:我们在Tomcat的webapps目录下另建一个名为myJspc的子目录,而这个新的myJspc目录也必须有一个名为WEB-INF的子目录,其中再含classes和lib这两个子目录: 此时,WEB-INF、classes、lib目录都是空的,但是一定要存在,不然Tomcat不会把myJspc目录视为存储网页文件的有效目录 。创建这些目录之后,将myJsp.jsp存放到myJspc目录下 。然后,如果Tomcat正在运行,先关掉,在重新启动 。 要察看Jsp文件,可以让浏览器连接到http://localhost:8080/myJspc/myJsp.jsp 。Tomcat会把Jsp的java程序代码转译成Servlet的形式,编译后,再运行它,然后,你就能看到网页展示的结果 。 开发Servlet: Jsp服务器实际上是建立在Java Servlet的基础上,运行前先转译成Servlet 。Servlet是纯粹的java程序,下面是一个Servlet的范例myServlet.java:
像以上的Servlet都需要基于javax.servlet.http.HttpServlet类,而且只是改写doGet()方法 。这个doGet()方法会 一个请求对象(request object),其中的数据包括了浏览器的种类及来自任何HTML控件的数据 。另外还有一个响应对象(response object),可以让你把想响应的结果返回给客户端浏览器 。在此例中,我们要以response对象的getWriter()方法来取得printWriter对象,以之来响应浏览器,而且以PrinterWriter对象的println()方法把HTML送回给浏览器 。接下来的步骤是:首先,创建一个myServlet项目,再把上列程序输入该项目中,保存成myServlet.java,包名是org.eclipsebook.servlet 。为类满足import语句所导入的内容,我们要把Tomcat随附的servlet.jar加入到编译路径中 。你可以在jakarta-tomcat\common\lib\servlet.jar找到servlet.jar 。将其加进编译路径中 。 为了让Tomcat知道这个新类是Servlet,你要用一个web.xml文件,保存该web程序的配置文件 。在web.xml文件中我们用两个xml元素——
输入上述xml文件的程序代码,保存web.xml,将之复制到WEB-INF目录下 。最后,关闭Tomcat,重新启动它 。http://localhost:8080/myServlet/org.eclipsebook.servlet.myServlet让浏览器连接到 。 |