J2EE/JAVA——在Servlet容器指定url的方法(注解与Web.xml文件)

2023-11-06

目录

1.在注解中指定URL方法

2.在web.xml文件中指定

3.两种方法的不同点

4.常见问题

(1)项目文件中找不到web.xml文件

(2)无法使用注解进行路径指定


1.在注解中指定URL方法

首先,这里给出一个Servlet的简单实例代码:

public class ServletDemo03 extends HttpServlet {

	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		this.doPost(req, resp);  //交给doPost运行
	}

	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {  
		
		PrintWriter out = resp.getWriter(); 
		out.println("Hello,world--Browse"); //输出到浏览器界面中
		System.out.println("Hello,world--console"); //输出到编译器console中
	}

}

如果要将这个Servlet类在容器中运行起来,则就需要指定类的URL,这里使用第一种方法,在.java文件中使用注解的方式进行配置。

注解配置语句:

@WebServlet("/url名")

将这条语句放在类的前面,即可完成该类的URL指定。

@WebServlet("/demo03")
public class ServletDemo03 extends HttpServlet {

	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		this.doPost(req, resp);
	}

	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		
		PrintWriter out = resp.getWriter();
		out.println("Hello,world--Browse");
		System.out.println("Hello,world--console");
	}

}

 例如这个时候,在类的前面加上了@WebServlet("/demo03")。那么就在运行项目的时候在URL最后加上\demo03就可以运行该类。

2.在web.xml文件中指定

除了在.java文件中,也在web.xml文件中进行配置。

首先找到该项目下的web.xml文件,右键——》open with——》Generic Text Editor,打开web.xml文件后添加指定语句即可。

语句格式为:

<servlet>
  	<servlet-name>类名</servlet-name>
  	<servlet-class>包名.类名</servlet-class>
  </servlet>
  <servlet-mapping>
  	<servlet-name>类名</servlet-name>
  	<url-pattern> /URL名 </url-pattern>
  </servlet-mapping>

例如这个时候我们在web.xml中添加我们的指定语句

 这个时候就完成了对URL的配置,那么就在运行项目的时候在URL最后加上/servletDemo03就可以运行该类。

 

3.两种方法的不同点

使用注解进行指定时,只需要在.java文件中写入即可,而另一种方法需要在web.xml文件中写入。

由此可以得出两者的优缺点。

注解指定优缺点
优点 可以在.java文件中写入,代码量小,容易检查错误。
缺点 每一个Servlet类前都需要写入一句注解才能够运行。不利于集中管理
web.xml指定路径的优缺点
优点 项目内所有Servlet类都在改文件指定,容易集中管理。
缺点 当Servlet类过多时,.xml文件内容会非常多,并且在xml文件中不能使用编译器查找错误,编写修改的难度很大。

4.常见问题

(1)项目文件中找不到web.xml文件

因为在最新的Servlet版本上,默认不创建web.xml文件,所以在创建项目中需要勾选上创建web.xml的选项。

(2)无法使用注解进行路径指定

因为使用注解进行路径指定是在Tomcat7.0,Servlet3.0之后的版本才推出的,所以如果在创建项目中选用之前的老旧的版本,那么就无法使用该方法。所以我们在创建项目的时候需要选择Tomcat7.0和Servlet3.0以后版本。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

J2EE/JAVA——在Servlet容器指定url的方法(注解与Web.xml文件) 的相关文章

随机推荐