Servlet入门求助
本帖最后由 ElasticForce 于 2019-11-24 13:36 编辑这学期学习了java框架的知识
然后尝试写了个Servlet的小程序
但是怎么改,打开都是404-Not Found,想让大佬们看看是哪里除了问题
文件目录:
MyStudentInfo.java
package com.elastic.student;
import java.io.IOException;
import java.io.PrintWriter;
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 MyStudentInfo
*/
@WebServlet("/MyStudentInfo")
public class MyStudentInfo extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public MyStudentInfo() {
super();
// 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.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("为什么不行啊?");
}
/**
* @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);
}
}
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
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_2_5.xsd">
<servlet>
<servlet-name>Student</servlet-name>
<servlet-class>com.elastic.student.MyStudentInfo</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Student</servlet-name>
<url-pattern>/servlet/student</url-pattern>
</servlet-mapping>
</web-app>
不知道是哪里出了问题
而且我有点疑惑的是
tomcat的wtpwebapps的文件夹里,没能看见我的java文件
项目用什么软件部署的? 羊毛丶 发表于 2019-10-21 21:58
项目用什么软件部署的?
用的eclipse 你都用了注解,为什么还在web.xml配置 楼上正解 @WebServlet("/MyStudentInfo"),直接访问你项目路径下的/MyStudentInfo就行了,你那个web.xml被注解配置覆盖了,看来你学的太散了,连注解都没学。。。 127.0.0.1/项目名称/MyStudentInfo 风景暗色调 发表于 2019-10-21 22:57
@WebServlet("/MyStudentInfo"),直接访问你项目路径下的/MyStudentInfo就行了,你那个web.xml被注解配置覆 ...
好的,谢谢,确实不了解这个注解的功能,生成servlet的时候eclipse自动生成了,百度学习了一下注解的用法。我尝试了正确的项目中,注解和xml文件可以共存,两个url都能使用,但我的这个项目还是报404,还是在tomcat的文件夹中找不到我想要运行的java文件(我觉得是这个原因,因为测试成功的项目文件夹里有与之对应的java文件) ElasticForce 发表于 2019-10-22 00:07
好的,谢谢,确实不了解这个注解的功能,生成servlet的时候eclipse自动生成了,百度学习了一下注解的用法 ...
那应该是你的项目部署出了问题。 本帖最后由 qqccfg 于 2019-10-23 00:37 编辑
看上面的代码肯定有问题或者不舒服,注解,xml中注册同一个servlet类,在注解那你至少要给个名字吧(两个注册同一个怎么默认名字,)如@WebServlet(name="servlet的名字",value="映射路径"),到底成功注册了servlet没有,可以在项目中看到的。访问的时候记得加 项目名称 127.0.0.1:端口(8080)/项目名称/路径
页:
[1]