zoukankan      html  css  js  c++  java
  • cxf-rs 、spring 和 swagger 环境配置切换【github 有项目】

    环境切换的目的是 准生产和生产环境切换时,只修改一个文件就可以达到效果

    在spring bean 文件中 配置:

        <bean class="cn.zno.common.context.GServletContext"></bean>
    package cn.zno.common.context;
    
    import java.util.Date;
    
    import javax.servlet.ServletContext;
    
    import org.springframework.web.context.ServletContextAware;
    
    public class GServletContext implements ServletContextAware {
    
        private ServletContext servletContext;
        
        @Override
        public void setServletContext(ServletContext servletContext) {
            this.servletContext=servletContext; 
            getServletContext().setAttribute("resouceVersion", new Date().getTime());
            getServletContext().setAttribute("swaggerPath", "http://localhost:8080/cxf-rs-swagger");
        }
        
        public ServletContext getServletContext() {  
            return servletContext;  
        }  
    }

    在index.jsp 中使用

     url = "${swaggerPath}/api/swagger.json";

    再进一步:

    把"http://localhost:8080/cxf-rs" 值配置到 properties 文件中

    swagger.path=http://localhost:8080/cxf-rs-swagger

    spring bean 中

    <util:properties id="config" location="classpath:conf/config.properties"></util:properties>

    常量文件

    package cn.zno.common.constants;
    
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.stereotype.Component;
    
    @Component
    public class ApplicationConstants {
    
    
        public static String SWAGGER_PATH;
    
        @Autowired(required = true)
        public void setSWAGGER_PATH(@Value("#{config['swagger.path']}") String SWAGGER_PATH) {
            ApplicationConstants.SWAGGER_PATH = SWAGGER_PATH;
        }
    }

    使用该常量

    getServletContext().setAttribute("swaggerPath", ApplicationConstants.SWAGGER_PATH);

    完整项目:

    git@github.com:witaste/cxf-rs-swagger.git

  • 相关阅读:
    rsync备份服务器搭建学习笔记
    switch case
    常见http状态码
    正则去除html字符串中的注释、标签、属性
    2018-10-10 10:00 从今日开始记录
    Qt dialog 的geometry()
    Qt禁止最大和最小化
    tableWidget删除除了头外的内容并释放
    Qt QTabBar 实现宽度调整,非QSS
    Qt 歌词有关内容
  • 原文地址:https://www.cnblogs.com/zno2/p/5553488.html
Copyright © 2011-2022 走看看