Servlet的HelloWorld
设置好TOMCAT环境变量(如何设置?)后在命令行输入startup可以启动Tomcat,输入shutdown可以关闭Tomcat。
/WEB-INF/web.xml是称为部署描述器的配置文件,Java web应用程序启动时,容器将会使用这个配置文件。
web.xml包含了应用程序元数据,例如默认显示的页面,要装载的Servlet以及文件的安全限制。
Java源代码和编译了的Java类应该放在Web应用程序的/WEB-INF/classes目录下。这个目录下的代码需要时可以被容器装载,并可可以被相同web应用程序的Servlet输入(import)使用。如果代码是包的一部分,就必须创建与包名匹配的目录结构。例如,一个类位于com.foo.example包中,放置了编译Java类的正确的地方是Web应用程序下的/WEB-INF/classes/com/foo/example目录。
Servlet中没有main方法,所以Servlet本身不是完整的Java应用程序。要使Servlet运行,即被容器调用,产生动态响应,就需要在容器中部署Servlet。
第一步:在\book\WEB-INF下创建部署描述文件web.xml,加入:
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0"
metadata-complete="true">
</web-app>
或简写:
<web-app xmlns="http://java.sun.com/xml/ns/javaee" version="3.0">
</web-app>
第二步:在容器中注册HelloWorld Servlet,加入
<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>com.book.HelloWorld</servlet-class>
</servlet>
第三步:映射Servlet,加入
<!--servlet-mapping用于将一个servlet元素中定义的servlet映射为一个对外的访问路径-->
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>HelloWorld</url-pattern>
<servlet-mapping>
最后web.xml变为如下内容:
<?xml version="1.0" encoding="ISO-8859-1"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0"
metadata-complete="true">
<!-- 在web容器中注册HelloWorld Servlet-->
<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>com.book.HelloWorld</servlet-class>
</servlet>
<!--servlet-mapping用于将一个servlet元素中定义的servlet映射为一个对外的访问路径-->
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/HelloWorld</url-pattern>
<servlet-mapping>
</web-app>
Servlet的HelloWorld的更多相关文章
- 实现一个servlet的helloworld小程序(不适用Eclipse)
实现一个servlet的helloworld小程序(不适用Eclipse) 1. 在tomcat中的webapps下建一个应用程序FirstServlet(C:\tomcat\webapps\Firs ...
- Servlet的HelloWorld实例
以下内容引用自http://wiki.jikexueyuan.com/project/servlet/first-example.html: Servlets是Java类,服务于HTTP请求并实现了j ...
- Servlet实践--HelloWorld
Servlet规范是一套技术标准,包含与Web应用相关的一系列接口,而具体的Servlet容器负责提供标准的实现,如Tomcat. Servlet的实例对象由Servlet容器负责创建,Servlet ...
- [Servlet] 初识Servlet
什么是Servlet? 定义 Servlet的全称是 Server Applet,顾名思义,就是用 Java 编写的服务器端程序. Servlet 是一个 Java Web开发标准,狭义的Servle ...
- Servlet简介与Servlet和HttpServlet运行的流程
1.Servlet [1] Servlet简介 > Server + let > 意为:运行在服务器端的小程序. > Ser ...
- servlet中的相对路径和绝对路径 及/, ./, ../的区别
./ 当前目录../ 父级目录/ 根目录资源寻找都是依靠路径,资源存储方式是按照哈希表运算的,所以路径的计算其实就是哈希值的计算. servlet中,所有路径的配置都要用绝对路径. 什么是绝对路径,就 ...
- 淘宝(阿里百川)手机客户端开发日记第十一篇 JSP+Servlet
由于本人从事.net开发已有多年经验,今天由于工作需要,我只能学习下JSP+Servlet,至于java web提供了更好的开发框架MVC,现在由于时间关系,我只好用JSP+Servlet来搭建服务器 ...
- JavaWeb学习之什么是Servlet、如何使用servlet、为什么这样使用、servlet的虚拟路径、关于缺省Servlet(2)
1.什么是Servlet? * 服务器端Java程序,servlet需要交给服务器来运行. * 与javax.servlet.Servlet接口有关的java程序 2.如何使用servlet?[必须] ...
- Apache CXF实现Web Service(3)——Tomcat容器和不借助Spring的普通Servlet实现JAX-RS(RESTful) web service
起步 参照这一系列的另外一篇文章: Apache CXF实现Web Service(2)——不借助重量级Web容器和Spring实现一个纯的JAX-RS(RESTful) web service 首先 ...
随机推荐
- html的常见meta标签信息
设置页面不缓存<meta http-equiv="pragma" content="no-cache"><meta http-equiv=&q ...
- android studio AndroidManifest
一.目录结构 1. AndroidManifest.xml 它是一个清单文件,提供应用的基本信息 <?xml version="1.0" encoding="utf ...
- 2018 ICPC 沈阳网络赛预赛 Supreme Number(找规律)
[传送门]https://nanti.jisuanke.com/t/31452 [题目大意]:给定一个数字(最大可达10100),现在要求不超过它的最大超级质数.超级质数定义:对于一个数,把它看成数字 ...
- BZOJ——1614: [Usaco2007 Jan]Telephone Lines架设电话线
Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 1930 Solved: 823[Submit][Status][Discuss] Description ...
- T1013 求先序排列 codevs
http://codevs.cn/problem/1013/ 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 题目描述 Descr ...
- iOS release版本去除NSLog打印信息
因为NSLog的输出还是比较消耗系统资源的,而且输出的数据也可能会暴露出App里的保密数据,所以发布正式版时需要把这些输出全部屏蔽掉. 我们可以在发布版本前先把所有NSLog语句注释掉,等以后要调试时 ...
- android 加一个按钮,退出程序
package com.example.yanlei.yl; import android.graphics.Color; import android.support.v7.app.AppCompa ...
- Matlab多项式拟合測试
x=0:0.2:4; %生成等差数列 rnd=rand(1,size(x,2))*5; %生成一组随机数 y=x.*x.*x+x.*x+6+rnd; %生成y=x^3+x^2+6函数在垂直方向5个尺度 ...
- 关于 redux-saga 中 take 使用方法详解
本文介绍了关于redux-saga中take使用方法详解,分享给大家,具体如下: 带来一个自己研究好久的API使用方法. redux-saga中effect中take这个API使用方式,用的多的是ca ...
- Oracle创建JOB定时任务
--- DECLARE JOB NUMBER;BEGIN DBMS_JOB.SUBMIT( JOB=>JOB, WHAT=>'CTABLE_T ...