今天看javaBean的知识,看到例子,试了一下,不仅要编写jsp文件还要写java文件。
那么问题来了,怎么在tomcat下使用java代码呢?我之前都是以工程的方式使用的,现在单独一个个建设,不懂怎么处理。于是,上传查了一下。
一、步骤区
1、搭建tomcat。
2、设置jsp的配置。(运行jsp文件)
3、在testJSP文件夹中建WEB-INF文件夹,并且新建web.xml文件。web.xml的内容,看下面的代码区。(注:在webapps中建了一个文件夹叫做testJSP)
4、建Servlet类。我取名为initServlet,initServlet.java的内容,看下面的代码区。
5、在WEB-INF下新建一个文件夹叫做classes,然后再建一个文件夹叫做com。将编辑好的initServlet.class文件放在com文件夹下。(此环节容易出问题。查看下面的问题区)
6、运行http://localhost:8050/testJSP/test看到“This is a servlet test.”字符串,说明配置成功了。
成功做完上面的事,就可以实践javaBean了。
二、代码区
1、web.xm
Archetype Created Web Application
Test
Test
A test Servlet
com.initServlet
Test
/test
有几个点要说一下:
(1)、servlet标签中的servlet-class标签里面设置的是initServlet类的位置。
(2)、servlet-mapping标签中的url-pattern标签里面设置的是过滤字符串。比如说,url中含有test字符串的,就被映射到initServlet类中。
(3)、servlet-mapping标签中的servlet-name标签里面设置的值要和servlet标签中的servlet-name标签里面的一致。表示拦截下来的东西会隐射到servlet里面的类。
2、initServlet.java
package com;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class initServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out=response.getWriter();
out.println("
This is a servlet test.
");
out.flush();
}
}
三、问题区
当然,在执行过程中,会遇到一些问题。比如,在编译initServlet.java文件时,报错。
解决方法是,将servlet-api.jar放置在jdk1.7.0_17\jre\lib\ext中。
四、其他
需要说明的是,本文中提到了四个文件夹,testJSP、WEB-INF、classes、com。其中,WEB-INF、classes两个文件夹的名字和位置都必须按照文中说的来。其他两个,随意取,和后面的文件写的一致就可以了。