servlet如何配置?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了servlet如何配置?相关的知识,希望对你有一定的参考价值。

我编了一个servlet,在JSDK环境下,在自己电脑上,可以运行,但前提是servlet必须要放在固定的目录中,这个目录能改动吗,怎么改?
另外,我还申请了一个免费主页,并且把这个servlet的.class文件和html文件上传到我申请的这个空间上面,两个放在同一目录下,在浏览器中运行,出错了,不知为何?请问,servlet可以直接上传到,免费空间中使用吗?还是需要一些什么配置!请高手赐教!!
在本地(自己电脑上)这个我知道怎么搞,我想说的是在我申请的那个免费空间上怎么运行servlet
请看一下这个网页:一点就出错,不知为何
http://www.freewebs.com/wangxule/

tomcat下如何配置jsp、servlet和bean的问题:

第一步:下载j2sdk和tomcat:到sun官方站点(http://java.sun.com/j2se/1.4.2/download.html)下载j2sdk,注意下载版本为Windows Offline Installation的SDK,同时最好下载J2SE 1.4.2 Documentation,然后到tomcat官方站点(http://www.apache.org/dist/jakarta/tomcat-4/)下载tomcat(下载最新4.1.x版本的tomcat);

第二步:安装和配置你的j2sdk和tomcat:执行j2sdk和tomcat的安装程序,然后按默认设置进行安装即可。
1.安装j2sdk以后,需要配置一下环境变量,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的j2sdk安装在c:\j2sdk1.4.2):
JAVA_HOME=c:\j2sdk1.4.2
classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(.;一定不能少,因为它代表当前路径)
path=%JAVA_HOME%\bin
接着可以写一个简单的java程序来测试J2SDK是否已安装成功:
public class Test
public static void main(String args[])
System.out.println("This is a test program.");


将上面的这段程序保存为文件名为Test.java的文件。
然后打开命令提示符窗口,cd到你的Test.java所在目录,然后键入下面的命令
javac Test.java
java Test
此时如果看到打印出来This is a test program.的话说明安装成功了,如果没有打印出这句话,你需要仔细检查一下你的配置情况。

2.安装Tomcat后,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的tomcat安装在c:\tomcat):
CATALINA_HOME=c:\tomcat;
CATALINA_BASE=c:\tomcat;
然后修改环境变量中的classpath,把tomat安装目录下的common\lib下的servlet.jar追加到classpath中去,修改后的classpath如下:
classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet.jar;
接着可以启动tomcat,在IE中访问http://localhost:8080,如果看到tomcat的欢迎页面的话说明安装成功了。

第三步:建立自己的jsp app目录
1.到Tomcat的安装目录的webapps目录,可以看到ROOT,examples, tomcat-docs之类Tomcat自带的的目录;
2.在webapps目录下新建一个目录,起名叫myapp;
3.myapp下新建一个目录WEB-INF,注意,目录名称是区分大小写的;
4.WEB-INF下新建一个文件web.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>
<display-name>My Web Application</display-name>
<description>
A application for test.
</description>
</web-app>
5.在myapp下新建一个测试的jsp页面,文件名为index.jsp,文件内容如下:
<center>
Now time is: <%=new java.util.Date()%>
</center>
6.重启Tomcat
7.打开浏览器,输入http://localhost:8080/myapp/index.jsp 看到当前时间的话说明就成功了。

第四步:建立自己的Servlet:
1.用你最熟悉的编辑器(建议使用有语法检查的java ide)新建一个servlet程序,文件名为Test.java,文件内容如下:
package test;
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 Test extends HttpServlet
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
PrintWriter out=response.getWriter();
out.println("<h1>This is a servlet test.</h1>");
out.flush();


2 .编译
将Test.java放在c:\test下,使用如下命令编译:
C:\Test>javac Test.java
然后在c:\Test下会产生一个编译后的servlet文件:Test.class
3 .将结构test\Test.class剪切到%CATALINA_HOME%\webapps\myapp\WEB-INF\classes下,也就是剪切那个test目录到classes目录下,如果classes目录不存在,就新建一个。 现在webapps\myapp\WEB-INF\classes下有test\Test.class的文件目录结构
4 .修改webapps\myapp\WEB-INF\web.xml,添加servlet和servlet-mapping
编辑后的web.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">

<display-name>My Web Application</display-name>
<description>
A application for test.
</description>
<servlet>
<servlet-name>Test</servlet-name>
<display-name>Test</display-name>
<description>A test Servlet</description>
<servlet-class>test.Test</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Test</servlet-name>
<url-pattern>/Test</url-pattern>
</servlet-mapping>
</web-app>
这段话中的servlet这一段声明了你要调用的Servlet,而servlet-mapping则是将声明的servlet“映射”到地址/Test上
5 .好了,启动Tomcat,启动浏览器,输入http://localhost:8080/myapp/Test 如果看到输出This is a servlet test.就说明编写的servlet成功了。
注意:修改了web.xml以及新加了class,都要重启Tomcat

第四步:建立自己的Bean:
1.用你最熟悉的编辑器(建议使用有语法检查的java ide)新建一个java程序,文件名为TestBean.java,文件内容如下:
package test;
public class TestBean
private String name = null;
public TestBean(String strName_p)
this.name=strName_p;

public void setName(String strName_p)
this.name=strName_p;

public String getName()
return this.name;


2 .编译
将TestBean.java放在c:\test下,使用如下命令编译:
C:\Test>javac TestBean.java
然后在c:\Test下会产生一个编译后的bean文件:TestBean.class
3 .将TestBean.class文件剪切到 %CATALINA_HOME%\webapps\myapp\WEB-INF\classes\test下,
4 .新建一个TestBean.jsp文件,文件内容为:
<%@ page import="test.TestBean" %>
<center>
<%
TestBean testBean=new TestBean("This is a test java bean.");
%>
Java bean name is: <%=testBean.getName()%>
</center>
5 .好了,重启Tomcat,启动浏览器,输入http://localhost:8080/myapp/TestBean.jsp 如果看到输出Java bean name is: This is a test java bean.就说明编写的Bean成功了。

这样就完成了整个Tomcat下的jsp、servlet和javabean的配置。接下来需要做的事情就是多看书、多读别人的好代码,自己多动手写代码以增强自己在这方面开发的能力了。
参考技术A 首先从理论方面了解:
从一个普通的java对象变成一个servlet,需要经过这么几步:
step1: 构造这个普通的对象
step2: 运行init方法,这个方法的主要目的:在init方法中,初始化servletconfig和servletcontext文件。
step3: 运行service方法, 这个方法的主要目的:在service方法中,调用doGet或者是doPost方法,处理请求的业务逻辑是在doGet或者是doPost方法里处理的。
step4: 运行destory方法,这个方法的目的: 这个servlet不用之后, 释放servlet占用的资源。

实践方面:
在实际的开发中,我们继承一个父类就可以了,这个父类把以上的几步都帮我们做好了,我们只需要重写doGet 或者是 doPost方法即可, 这个父类就是HttpServlet。
即: public class TestServlet extends HttpServlet
......
doPost(HttpServletRequest req,
HttpServletResponse resp)
........

......


然后, 把这个servlet配置到web.xml文件中, 以使请求能够找到这个servlet即可。
即:
<servlet>
<servlet-name>MyServlet</servlet-name>
<servlet-class>xx.xx.TestServlet </servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MyServlet</servlet-name>
<url-pattern>/test.do</url-pattern>
</servlet-mapping>

配置完成后,我们servlet发布到web服务器中; 服务器启动后, 在url中敲入:
http://localhost:8080/myApplication/test.do
TestServlet中的doGet或者doPost方法就会处理我们提交的请求。

在eclipse中直接运行servlet 如何配置tomcat

tomcat安装地址为F:\Tomcat\apache-tomcat-6.0.35
现在要在eclipse运行文件 地址在F:\eclipse程序\TimeForm\src\TimeForm
要在server.xml里加一句怎么的语言

你先不要管他的配置,eclipse会自动给你生成的

1、在eclipse里面点击菜单window  -  preference 里面的server添加一个tomcat

2、配置完tomcat后,你直接调出视图servers

右键new 一个 server

3、然后再这个server上面右键,选择add


然后finish,这样就自动配好了server.xml

比如这个项目

<Context docBase="cmis-train" path="/cmis-train" reloadable="true" source="org.eclipse.jst.j2ee.server:cmis-train"/></Host>

   

参考技术A 要在server.xml里加
<Context path="/s" docBase="F:\eclipse程序\TimeForm\src\TimeForm" reloadable="true"/>

其中,path是站点名,即localhost:8080/s可以访问你的web。
docBase为你的web程序的根目录路径。
reloadable表示在程序文件有改动时,是否重载程序文件。

sevlet是不能直接独立运行的,必须基于web项目,并在web项目的web.xml中配置。本回答被提问者和网友采纳
参考技术B

找到菜单 window → Show View → Servers,打开Servers视图标签,部署的Tomcat 服务

在这个服务上右击,选择“Add Deployment”

在新打开的对话框中,有一个Project项,选择要部署的项目

点击“Finish”完成部署

这样项目就部署到Tomcat里面去了

参考技术C 百度教程很多

以上是关于servlet如何配置?的主要内容,如果未能解决你的问题,请参考以下文章

在eclipse中直接运行servlet 如何配置tomcat

如何配置 maven 以使用 servlet 3

如何在 web.xml 中配置 spring-boot servlet?

如何在 magnolia CMS 中配置自定义 servlet

web.xml中url-pattern有啥意义,servlet如何配置?

SpringBoot是如何配置DispatcherServlet的