用myeclipse创建servlet

如果不用myeclipse,则写一个servlet,编译,把class放到WEB-INF的classes下面,再修改web.xml,很麻烦。所谓“工欲善其事必先利其MyEclipse是java开发的利器,既然有这么好的利器,那就要好好利用。闲话少说,下面进入正题。

(1)首先启动MyEclipse,(至于MyEclipse的安装以及Tomcat的配置,就参考另外的教程了),创建一个Web Project:New—>Web Project输入ProjectName,其他的可以采取默认值。 点击finish,完成进入下一步。如下图:

(2)右键单击“src”,————>new ————>servlet,假设名字是MyFirstServlet,其他的用默认值就可以了。

 

点击next以后,会出现一个对话框,这里就是一些配置信息,原来这些工作都是要手动完成,(编译servlet.java成class文件,配置web.xml文件),只不过现在都在这一步完成了。点击finish完成。

(3)myeclipse会自动给你生成一些代码,这些代码就可以编译成一个完整的servlet了。值得一提的是myeclipse会同时提供给你一个 web.xml。这个样子就不用用户自己配置了。但是,最好要对这个web.xml的语句比较熟悉。不然自己不会配置。

(4)打开TestServlet项目的WEB ROOT目录,可以看到有一个index.jsp 文件和一个WEB-INF目录,其中国,WEB-INF目录下有个web.xml文件,这个xml问价就是有关webapp配置的文件。具体的意义见下面。

(5)在url里面输入http://localhost/TestServlet/servlet/Test就可以访问到刚才建的servlet。(注意,这里的url地址,一定要与你的web.xml文件里的配置信息对应,要不然会出错的)。

3.1 分配名称
为 了提供初始化参数,对servlet或JSP页面定义一个定制URL或分配一个安全角色,必须首先给servlet或JSP页面一个名称。可通过 servlet元素分配一个名称。最常见的格式包括servlet-name和servlet-class子元素(在web-app元素内),如下所示:
<servlet>
<servlet-name>Test</servlet-name>
<servlet-class>moreservlets.TestServlet</servlet-class>//注moreservlets通常为包名
</servlet>

这表示位于WEB-INF/classes/moreservlets/TestServlet的servlet已经得到了注册名Test。给 servlet一个名称具有两个主要的含义。首先,初始化参数、定制的URL模式以及其他定制通过此注册名而不是类名引用此servlet。其次,可在 URL而不是类名中使用此名称。因此,利用刚才给出的定义,URL http://host/webAppPrefix/servlet/Test 可用于http://host/webAppPrefix/servlet/moreservlets.TestServlet 的场所。

此web.xml文件使用servlet-name和servlet-class元素将名称Test与TestServlet.class相关联。


3.2 定义定制的URL
大多数服务器具有一个缺省的serlvet URL:
http://host/webAppPrefix/servlet/packageName.ServletName。虽然在开发中使用这个URL很方便,但是我们常常会希望另一个URL用于部署。例如,可能会需要一个出现在Web应用顶层的URL(如,http://host/webAppPrefix/Anyname),并且在此URL中没有servlet项。位于顶层的URL简化了相对URL的使用。此外,对许多开发人员来说,顶层URL看上去比更长更麻烦的缺省URL更简短。
事实上,有时需要使用定制的URL。比如,你可能想关闭缺省URL映射,以便更好地强制实施安全限制或防止用户意外地访问无初始化参数的servlet。如果你禁止了缺省的URL,那么你怎样访问servlet呢?这时只有使用定制的URL了。
为 了分配一个定制的URL,可使用servlet-mapping元素及其servlet-name和url-pattern子元素。Servlet- name元素提供了一个任意名称,可利用此名称引用相应的servlet;url-pattern描述了相对于Web应用的根目录的URL。url- pattern元素的值必须以斜杠(/)起始。
下面给出一个简单的web.xml摘录,它允许使用URL 
http://host/webAppPrefix/UrlTest而不是http://host/webAppPrefix/servlet/Test
http://host/webAppPrefix/servlet/moreservlets.TestServlet。请注意,仍然需要XML头、DOCTYPE声明以及web-app封闭元素。此外,可回忆一下,XML元素出现地次序不是随意的。特别是,需要把所有servlet元素放在所有servlet-mapping元素之前。
<servlet>
<servlet-name>Test</servlet-name>
<servlet-class>moreservlets.TestServlet</servlet-class>
</servlet>
<!-- ... -->
<servlet-mapping>
<servlet-name>Test</servlet-name>
<url-pattern>/UrlTest</url-pattern>
</servlet-mapping>
URL模式还可以包含通配符。例如,下面的小程序指示服务器发送所有以Web应用的URL前缀开始,以..asp结束的请求到名为BashMS的servlet。
<servlet>
<servlet-name>BashMS</servlet-name>
<servlet-class>msUtils.ASPTranslator</servlet-class>
</servlet>
<!-- ... -->
<servlet-mapping>
<servlet-name>BashMS</servlet-name>
<url-pattern>/*.asp</url-pattern>
</servlet-mapping>


web.xml中url-pattern值得相对主目录(一般是host+项目名)的相对路径,这里的servlet-name必须同上面的servlet-class配对的servlet-name一致,因为它是通过servlet的别名指定相对路径。

转载:http://blog.csdn.net/lhflower123/article/details/8219592
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值