我新建了个servlet项目:
package hello; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Servlet implementation class HelloServlet */ @WebServlet("/Hello") public class HelloServlet extends HttpServlet { private static final long serialVersionUID = 1L; /** * Default constructor. */ public HelloServlet() { // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub response.getWriter().append("Served at: ").append(request.getContextPath()); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub doGet(request, response); } }
然后访问http://localhost:8080/hello/H...显示404
但访问别的jsp页面正常
然后我加了个web.xml文件:
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" version="3.1">
就能访问了
但是我再新建个servlet文件,新建的却还是无法访问
@WebServlet("/World") public class WorldServlet extends HttpServlet {
为什么会这样啊?难道不能用注解了?
我用的tomcat 8.5 , Java 1.8 , servlet 3.1 , eclipse 4.6.0 (Neon)
求解注解为什么不能用啊
项目结构:
开始放错图片,以修正
把你整个项目结构发出来看下