在springboot中使用servlet的话,用servlet3.0比较简单
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
然后创建一个servlet,只要在类上加@WebServlet注解就代表这是servlet不用在web.xml中配置servlet了,name属性,就是以前web.xml中servletname标签,随便起就行,urlPatterns = "/one"这个属性是访问servlet的路径.
package com.buba.servlet;
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;
@WebServlet(name = "oneServlet",urlPatterns = "/one")
public class OneServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("get!");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("post!");
}
@Override
public void destroy() {
System.out.println("销毁!");
}
public OneServlet() {
System.out.println("实力化!");
}
@Override
public void init() throws ServletException {
System.out.println("初始化!");
}
}
然后在启动类上加@ServletComponentScan(basePackages = "com")这个注解表示扫描webservlet的一系列注解,basePackages = "com"这个属性表示扫描哪个包下的servlet注解,如果不写的话,servlet必须创建到启动类同包或者子包下.