SpringBoot中如何集成Servlet呢?
下文笔者将讲述两种SpringBoot集成Servlet的方法,如下所示:
实现思路:
方式1:
使用全注解的方式开发
1.1 在启动类上面加上注解 @ServletComponentScan
1.2 编写Servlet程序,并在Servlet程序上加上注解 @WebServlet(name="testServlet1",urlPatterns = "/test")
方式2:
直接编写一个@Configuration类
将Servlet程序使用ServletRegistrationBean注册到Springboot中
例1:
//启动类上加入Servlet扫描注解
@SpringBootApplication
@ServletComponentScan
public class SpringbootservletApplication {
public static void main(String[] args) {
SpringApplication.run(SpringbootservletApplication.class, args);
}
}
//编写Servlet类
@WebServlet(name="testServlet1",urlPatterns = "/test")
public class TestServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("java265.com 提醒你 -servlet已经开始运行");
}
}
-----采用以上方式编写代码后,我们可以使用
http://localhost:8080/test访问servlet了
例2:
@SpringBootApplication
public class SpringbootservletApplication {
public static void main(String[] args) {
SpringApplication.run(SpringbootservletApplication.class, args);
}
}
//编写servlet
public class TestServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("java265.com 提醒你 -servlet已经开始运行");
}
}
//编写configuration类
package com.java265;
import com.adeal.servlet.TestServlet;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class ServletConfig {
/*
* 多个Servlet 需实例化多个ServletRegistrationBean实例
* */
@Bean
public ServletRegistrationBean getServletRegistrationBean() {
ServletRegistrationBean bean = new ServletRegistrationBean(new TestServlet());
//Servlet既可以使用 test01也可以使用test02访问
bean.addUrlMappings("/test02");
bean.addUrlMappings("/test01");
return bean;
}
}
-------编写以上代码后,我们可以使用----
http://localhost:8080/test01 访问servlet了
http://localhost:8080/test02 访问servlet了
来源于:http://www.java265.com/JavaFramework/SpringBoot/202201/2221.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通