精华内容
下载资源
问答
  • tomcat读取外部配置文件

    千次阅读 2019-01-31 17:18:06
    步骤一: maven install 命令打包项目war包 步骤二:新建文件夹如图,config是后面要存放配置文件的 ...修改tomcat conf/catalina.properties 将配置文件路径加入common.loader 步骤五: 启动tomcat...

    步骤一: maven install 命令打包项目war包

    步骤二:新建文件夹如图,config是后面要存放配置文件的

    步骤三:

    修改tomcat conf/server.xml

    不自动解压war包 不自动部署war

    步骤四:

    修改tomcat conf/catalina.properties 将配置文件路径加入common.loader

    步骤五:

    启动tomcat的startup.bat,查看黑窗口信息,以及logs目录下的log日志(默认情况),如果都没有报错,那就可以通过接口或其他形式验证项目是否启动正常,另外在log中也要注意加载配置文件的路径是否正确

    注意: datasource是父目录,这个必须和你读取文件时的路径是一致的

    展开全文
  • -- 打包为war包,部署在tomcat容器启动 --> <packaging>war</packaging> <parent> <groupId>org.springframework.boot</groupId> <artifactId>...
    • 项目结构

     

     

    • pom.xml
        <!-- 打包为war包,部署在tomcat容器启动 -->
        <packaging>war</packaging>
    
    	<parent>
    		<groupId>org.springframework.boot</groupId>
    		<artifactId>spring-boot-starter-parent</artifactId>
    		<version>2.1.4.RELEASE</version>
    		<relativePath /> <!-- lookup parent from repository -->
    	</parent>
    
    	<properties>
    		<java.version>1.8</java.version>
    	</properties>
    
    	<dependencies>
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-starter-web</artifactId>
    			<exclusions>
                    <exclusion>
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-starter-tomcat</artifactId>
                    </exclusion>
                </exclusions>
    		</dependency>
    
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-starter-test</artifactId>
    			<scope>test</scope>
    			<exclusions>
    				<exclusion>
    					<groupId>org.junit.vintage</groupId>
    					<artifactId>junit-vintage-engine</artifactId>
    				</exclusion>
    			</exclusions>
    		</dependency>
    		
    		
    		<!-- jsp支持开启 -->  
            <dependency>
                <groupId>org.apache.tomcat.embed</groupId>
                <artifactId>tomcat-embed-jasper</artifactId>
            </dependency>
            <!-- servlet支持开启,上面exclusions掉tomcat后必须加这个 -->
            <dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>javax.servlet-api</artifactId>
            </dependency>
    		
    	</dependencies>
    
    	<build>
            <!-- 访问url中的项目名 -->
    		<finalName>outconfig-demo</finalName>
    		<plugins>
    			<plugin>
    				<groupId>org.apache.maven.plugins</groupId>
    				<artifactId>maven-war-plugin</artifactId>
                <configuration>
                    <failOnMissingWebXml>false</failOnMissingWebXml>
                </configuration>
    			</plugin>
    		</plugins>
    	</build>
    

     

    • 启动类,App
    @SpringBootApplication
    public class App {
    	public static void main(String[] args) {
    		SpringApplication.run(App.class, args);
    	}
    }
    • 配置tomcat 启动读取外部文件
    public class AppConfig extends SpringBootServletInitializer  {
    	@Override
    	protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
    		return builder.sources(App.class);
    	}
    }
    
    • 获取属性并赋值,指定参数
    @Configuration
    @PropertySource("file:${mypath.config}/application.properties")
    public class DemoConfig {
    	
    	@Value("${user.username}")
    	private String key;
    	
    	@Value("${user.password}")
    	private String value;
    
    	public String getKey() {
    		return key;
    	}
    
    	public void setKey(String key) {
    		this.key = key;
    	}
    
    	public String getValue() {
    		return value;
    	}
    
    	public void setValue(String value) {
    		this.value = value;
    	}
    
    	@Override
    	public String toString() {
    		return "DemoConfig [key=" + key + ", value=" + value + "]";
    	}
    
    }
    
    •  controller测试类,预期打印出DemoConfig内容
    @Controller
    @RequestMapping("/test")
    public class TestController {
    
    	@Autowired
    	private DemoConfig demoConfig;
    	
    	@RequestMapping("/getConfig")
    	@ResponseBody
    	public String getConfig() {
    		return demoConfig.toString();
    	}
    }
    
    •  项目下的application.properties
    spring.profiles.active=outConfig

     

     


    windows环境下:

    • D:\test 路径下编辑 application.properties
    user.username=qhf
    user.password=abcdefg
    

     

    • eclipse 启动 tomcat,添加参数

    •  启动tomcat

    • 运行测试

     


    linux 环境下:

    • 打成 war 包上传到 tomcat 的 webapps 目录下:run as Maven build

     

    • vim /app/tomcat/tomcat-8080/bin/setenv.sh
    #!/bin/bash
    
    JAVA_HOME=/usr/local/jdk1.8.0_191
    
    CATALINA_HOME=/app/tomcat/tomcat-8080
    
    CATALINA_PID=/app/tomcat/tomcat-8080/bin/tomcat.pid
    
    JAVA_OPTS="-server -Dfile.encoding=UTF-8 -Djava.awt.headless=true"
    JAVA_OPTS="$JAVA_OPTS -server -Xms2G -Xmx2G -XX:MaxNewSize=512m -XX:MaxMetaspaceSize=512m -XX:MetaspaceSize=512m"
    
    JAVA_OPTS="$JAVA_OPTS -Dmypath.config=/home/qhf"

     

    • 运行 tomcat

    • 访问测试

     

     

    展开全文
  • Tomcat读取war包外配置文件

    千次阅读 2019-03-26 22:19:32
    项目部署时,因为开发环境、测试环境、生产环境的配置各不相同,所以不能使用同一套配置文件,因此需要在部署服务时将配置文件放置到一个单独的文件夹中,这样就需要在Tomcat中进行配置 以windows系统启动tomcat为...

    项目部署时,因为开发环境、测试环境、生产环境的配置各不相同,所以不能使用同一套配置文件,因此需要在部署服务时将配置文件放置到一个单独的文件夹中,这样就需要在Tomcat中进行配置

    以windows系统启动tomcat为例:

    1、修改bin/catalina.bat(linux系统需要修改catalina.sh,修改方式不大一样)

    将下方语句:

    rem Ensure that any user defined CLASSPATH variables are not used on startup,
    rem but allow them to be specified in setenv.bat, in rare case when it is needed.
    set CLASSPATH=

    修改为:

    rem Ensure that any user defined CLASSPATH variables are not used on startup,
    rem but allow them to be specified in setenv.bat, in rare case when it is needed.
    set CLASSPATH=%CLASSPATH%;C:\javaSoftware\Tomcat-7.0.11\etcconfig;

    C:\javaSoftware\Tomcat-7.0.11\etcconfig为外部配置文件存放位置

    该方法在我的7.0.11版本不生效

    2、修改conf/catalina.properties

    common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar

    修改为

    common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar,C:/javaSoftware/Tomcat-7.0.11/etcconfig

    本tomcat修改后重启生效

     

    参考文档:

    https://blog.csdn.net/wsh_0703/article/details/80348026

    展开全文
  • 为了使项目配置不受生产、测试、开发环境的影响,且更加可视化可维护配置文件,web项目的配置文件需要根据不同环境配置动态变更,不能直接写死在war中,就需要我们实现war包可以读取外部配置文件。 二、准备 ...

     一、需求
         为了使项目配置不受生产、测试、开发环境的影响,且更加可视化可维护配置文件,web项目的配置文件需要根据不同环境配置动态变更,不能直接写死在war中,就需要我们实现war包可以读取外部的配置文件。
     二、准备
      windows、eclipse、tomcat、spring配置
     三、实现
    1、在war包外新建配置文件,如下图

    2、修改tomcat conf/catalina.properties 将配置文件路径加入common.loader

    3、在spring.xml配置中新加:

        <!-- 加载包外配置 -->
        <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
            <property name="systemPropertiesModeName" value="SYSTEM_PROPERTIES_MODE_OVERRIDE"/>
            <property name="location" value="file:E:/cms_dabao/config/spring_config.properties"/>
        </bean>

    4、在spring.xml配置中引用包外的配置文件spring_config.properties

    5、clean项目,重新启动,over

    文档参考:https://blog.csdn.net/Mars93/article/details/78017209

                      https://blog.csdn.net/evilcry2012/article/details/51248513

    展开全文
  • IDEA 使用外部Tomcat配置文件

    千次阅读 2018-07-18 23:40:32
  • tomcat 加载外部配置文件

    千次阅读 2017-09-11 09:48:00
    tomcat conf catalina.properties 文件中 设置 shared.loader 为要加载的的文件目录 # # List of comma-separated paths defining the contents of the "shared" # classloader. Prefixes should be used ...
  • 为了使项目配置更加可视化可维护,web项目的配置文件需要动态变更,不能直接写死在war中,就需要我们实现war包可以读取外部配置文件。 二、准备 eclipse、tomcat、maven 三、实现 123456步骤一: maven ...
  • 1. springboot支持动态的读取文件,扩展接口:org.springframework.boot.env.EnvironmentPostProcessor 我的项目使用场景起因是: 在同一台机器上起了两个tomcat实例, 每个项目的日志文件打印路径要配成不同, 如果每次...
  • 但是,在有些场景下或者实际工作中,往往有很多原因使我们陷入困扰,比如将boot的jar交给docker部署,比如我们是旧的项目改造,比如我们的配置文件外部平台来管理,比如我们必须用外部tomcat来运行等等,经常使...
  • SpringBoot读取外部配置文件的方法

    万次阅读 2019-04-24 10:50:37
    内部读取配置文件 相信很多SpringBoot初学者一般对于SpringBoot读取配置文件的方式最为熟悉的就是内部配置文件直接使用application.properties里面...既然这样,那么我们必须要知道如何使用外部配置文件灵活启动项目...
  • Tomcat在项目中访问外部资源文件 解决的问题:如在tomcat中有一项目WincomSys,需要在此项目中访问D:\GMap中的资源文件。 1、首先在tomcat目录conf/server.xml文件中添加虚拟目录,如下图所示,需要在Host中添加一...
  • 使用负载均衡器,两个服务器上的属性配置文件存在差异,当前是通过手动替换文件的方式进行版本更新,人为操作可能会出问题,想将属性文件调整好后放到一个位置,tomcat7 启动时发布war包从外部加载属性配置文件。...
  • 记录一下Springboot打成war包部署遇到的坑问题描述指定tomcat 的jdk版本springboot打war包及读取外部配置 问题描述 我先描述下我遇到的问题。在idea上能正常访问。然后打war包到tomcat上跑。启动发现没报错也没有...
  • tomcat配置读取tomcat文件夹以为的图片 第一种:Windows环境下: 页面img标签填写为<imgsrc="/XXX.jpg"/>即可访问 eclipse下配置访问本地图片: 第二种:linux环境下; 页面img标签填写为<imgsrc="/...
  •   项目在部署的时候不想把配置文件打进包里,读取外部配置文件,会更灵活。 Jar包   SpringBoot打JAR包时,默认从以下四个位置读取,后面的位置会覆盖前面的位置,所以配置文件可以放在外部读取,打包时排除配置...
  • System.out.println("找不到配置文件"); e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }finally { if(in!=null){ try { in.close(); } catch (IOException e) { e....
  • 代码如下://找到tomcat/etc/wx文件夹 private static String getPropFolderPath() { /* Properties p = System.getProperties(); p.list(System.out);*/ //获取tomcat的路径 String path = System.getProperty...
  • spring-boot部署(读取外部配置文件

    千次阅读 2018-06-28 11:25:11
    背景 项目架构基于springboot和...部署时对于配置文件(需要启动时就加载的,比如jdbc,mq,redis等文件)的处理,其实问题还是比较经典的。基本上大部分项目应该都会遇到,处理方式可能各不相同。 一、sprin...
  • 最近在做项目的时候,有一个需求,用户可以上传图片、视频、音频等,这种情况下,如果用户比较多或者用户上传的资源比较大,直接放到服务器中会使服务器的压力增大,...很简单,只需要在Tomcat配置文件server.xml...
  • web应用程序通过Tomcat等容器启动时,会首先加载web.xml文件,通常我们工程中的各种配置文件,如日志、数据库、spring的文件等都在此时被加载,下面是两种常用的配置文件加载路径,即配置文件可以放到 SRC目录下或者...
  • 最近正在努力学习中。。。我会把我每天学到的知识上传到我的博客中,希望和大家交流,勿喷》、 ... 当你的servlet类编译以后,它会编译到你的tomcat文件夹下的webapps/projectName/WEB-INF/classes文...
  • 思路: 通过实现 EnvironmentPostProcessor 在程序启动加载程序环境的时候加载自定义的属性文件 参考地址: https://blog.csdn.net/yangyun901222/article/details/82287383 ...
  • 当我们使用springboot开发时,有的时候需要打war包在外部tomcat部署,方便运维人员维护,但是修改配置文件后重新打包给运维的时候,又需要修改一些配置这样还是不方便维护。 在网上找了很多例子但是都是针对....
  • Tomcat系列1-配置文件

    千次阅读 2019-05-07 19:11:15
    tomcat配置文件目录是conf目录,主要配置文件有5个,下面一个个分析下。 1.context.xml Context.xml是Tomcat公用的环境配置,tomcat服务器会定时去扫描这个文件。一旦发现文件被修改(时间戳改变了),就会自动重新...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 20,941
精华内容 8,376
关键字:

tomcat读取外部配置文件