1.项目中本来集成有CXF Webservice服务,springboot的parent版本号为2.0.2.RELEASE,集成的CXF版本号为:
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-spring-boot-starter-jaxws</artifactId>
<version>3.2.4</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http</artifactId>
<version>3.2.4</version>
</dependency>
2.为了发布webservice服务,配置了CxfConfig.java类:核心代码如下
@Bean
public ServletRegistrationBean dispatcherServlet() {
ServletRegistrationBean servletRegistrationBean=new ServletRegistrationBean(new CXFServlet(), "/soap/*");
servletRegistrationBean.setName("cxfDispatcherServlet");
return servletRegistrationBean;
}
3.上述配置好后,为了解决web服务url请求的正常访问,又配置了WebConfig.java类:核心代码如下:
@Bean
public ServletRegistrationBean dispatcherRestServlet() {
AnnotationConfigWebApplicationContext context = new AnnotationConfigWebApplicationContext();
context.scan("com.**.controller");
DispatcherServlet disp = new DispatcherServlet(context);
ServletRegistrationBean registrationBean = new ServletRegistrationBean(disp);
registrationBean.setLoadOnStartup(1);
registrationBean.addUrlMappings("/*");
registrationBean.setName("webDispatcherServlet");
return registrationBean;
}
4.为了集成Druid的SQL监控功能,又配置了DruidConfig.java类,核心代码如下:
@Bean
public ServletRegistrationBean druidServlet() {
ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new StatViewServlet(), "/druid/*");
servletRegistrationBean.addInitParameter("allow","127.0.0.1");
//servletRegistrationBean.addInitParameter("deny","192.168.0.*");
servletRegistrationBean.addInitParameter("loginUsername", username);
servletRegistrationBean.addInitParameter("loginPassword", password);
servletRegistrationBean.addInitParameter("resetEnable", "false");
servletRegistrationBean.setName("druidDispatcherServlet");
servletRegistrationBean.setLoadOnStartup(2);
return servletRegistrationBean;
}
5.配置上述后,webservice服务、web请求、监控页面均可以访问成功。之所以每个ServletRegistrationBean设置name,是为了防止覆盖。
本文介绍如何在SpringBoot项目中集成CXF Webservice服务,并配置Servlet实现web服务URL请求访问及Druid SQL监控功能。
532

被折叠的 条评论
为什么被折叠?



