1.用的是IDEA,配置了Modules选项卡下的output path:E:\IDEA\ToDoList\web\WEB-INF\classes
这是Servlet能配置成功的前提。
–
2.想用注解,不想用设置web.xml的话,用
@WebServlet(name = "myServlet",urlPatterns = "/myServlet")
web.xml里要保证
version="4.0"
metadata-complete="false">
web-app标签3.0以上版本才可以使用servlet的注解的,这是必要条件
–
如果想要配置的话,别忘了url-pattern便签那里,前面有个 \
<servlet>
<servlet-name>hello</servlet-name>
<servlet-class>com.ToDoList.www.sevelets.myServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>hello</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
–
3.最好新建的是Servlet类,而不是java类,Servlet示例代码
package com.ToDoList.www.sevelets;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
@WebServlet(name = "myServlet",urlPatterns = "/myServlet")
public class myServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("hello world,servlet!");
out.close();
}
}
4.最后:在浏览器上输入的网址,是
http://localhost:8080/ToDoList_war_exploded/myServlet //定位到Servlet层
而不是
http://localhost:8080/ToDoList_war_exploded //默认打开的页面