【JavaWeb开发(二)】第一个jsp程序以及web.xml分析

第一个jsp程序,做一个最简单的在浏览器中显示hello world,这个当然不是在index.jsp文件中的<body>标签中输入hello world这几个字符,我们使用Servlet来实现,在开发之前我们需要先下载一个j2ee的api文档(j2se的没有servlet类)下载地址:http://www.allimant.org/javadoc/ 在最下面的列表中选择“The Java Enterprise Edition 5 Tutorial”这个就可以了。

打开myeclipse,在src中新建java class,这一次的重点在于分析浏览器解析url的过程,所以,java代码就不再解释了

public class HelloWorldServlet extends HttpServlet{
	@Override
	public void doGet(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		resp.setContentType("text/html");
		PrintWriter out=resp.getWriter();
		out.println("<html><head><title>my first jsp:hello word</title></head>");
		out.println("<body>my first jsp:hello world</body></html>");
		
		out.flush();
	}
}

之后是修改WebRoot->WEB-INF->web.xml在<web-app></web-app>之间添加如下代码:

<servlet>
<servlet-name>hello world</servlet-name>
<servlet-class>com.test.servlet1.HelloWorldServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>hello world</servlet-name>
<url-pattern>/hello world</url-pattern>
</servlet-mapping>

代码稍后解释,现在启动tomcat服务器,在浏览器中输入:http://localhost:8080/test/hello world 就可以打开“my first jsp:hello world”的页面了。注意,这里的hello world是一种逻辑上的资源名,在物理存储地址中找不到这个hello world的文件名。

现在开始解释一下如何通过这个url,访问到我们编写的servlet类的,首先http://localhost:8080是默认的tomcat访问前缀,“/test”是我们在上一节说过的修改conf目录下的“server.xml”中的path的值


服务器解析到url的“/test”的时候便在server.xml文件中找到了path为“/test”的这条记录,并将这条记录中的 docBase的路径映射到物理路径,接下来开始访问“/hello world”这个资源,前面说过了,这个资源实际上是一个逻辑资源,物理存储地址中找不到这样一个文件名命名的文件,所以,服务器就找到了web.xml文件,这时拿“/hello world”与文件中的<servlet-mapping>里面的<url-pattern>标签进行匹配,匹配成功后,得到<servlet-name> 中的值,再拿这个值与<servlet>中的<servlet-name>标签匹配,匹配成功后,将<servlet-class>中的servlet项目的路径返回给浏览器,这样,浏览器就可以输出这个servlet中的内容了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值