- 实现Servlet组件相关接口
public class ApiServlet extends HttpServlet {
@Override
public void init(ServletConfig config) throws ServletException {
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
}
}
- 通过ServletRegistrationBean加载Servlet组件
@Bean
public ServletRegistrationBean servletRegistrationBean(){
ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean();
servletRegistrationBean.setName("ApiServlet");
servletRegistrationBean.setServlet(new ApiServlet());
servletRegistrationBean.addUrlMappings("/api/servlet/*");
servletRegistrationBean.addInitParameter("initParam1","initValue1");
servletRegistrationBean.setAsyncSupported(true);
return servletRegistrationBean;
}
- 增加ServletComponentScan扫描入口
@ServletComponentScan(basePackages = "com.github.evan.springboot.web.servlet.annotation")
- 实现Servlet组件相关接口
添加相关注解
- @WebServlet
- @WebFilter
- @WebListener
- @WebInitParam
@WebServlet(name = "AnnoServlet", urlPatterns = "/annotaion/servlet/*",
initParams = {
@WebInitParam(name = "initParam1", value = "initValue1"),
@WebInitParam(name = "initParam2", value = "initValue2")
}
)
public class AnnoServlet extends HttpServlet {
@Override
public void init(ServletConfig config) throws ServletException {
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
}
}
- ContentNegotiatingViewResolver
- BeanNameViewResolver
- ConfigurableWebBindingInitializer
- WebMvcRegistrations
- HttpMessageConverters
- MessageCodesResolver
- Welcome Page 静态和模板页面(index.html)
- Custom Favicon
- 内容协商
- WebBindingInitializer
注解
spring.mvc.static-path-pattern=/resources/**
spring.mvc.format.date-time=yyyy-MM-dd HH:mm:ss
- 多数据源
- druid数据库连接池
- 内置数据HikariCp tomacat dbcp2
- JNDI
- H2
- HSQL
- Derby
spring.data.template.*
通用MyBatis 框架