首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    微服务之SpringCloud架构第六篇(下)——配置中心(Apollo)

    Boot application.properties(本案例使用的方式) 通过Spring Boot的application.properties文件配置,如:app.id=YOUR-APP-ID..."); 2、通过Spring Boot的配置文件(本案例使用的方式) 可以在Spring Boot的application.properties或bootstrap.properties中指定apollo.meta...客户端会把从服务端获取到的配置在本地文件系统缓存一份,用于在遇到服务不可用,或网络不通的时候,依然能从本地恢复配置,不影响应用正常运行。...("apollo.cacheDir", "/opt/data/some-cache-dir"); 通过Spring Boot的配置文件 可以在Spring Boot的application.properties...在Java程序启动脚本中,可以指定-Denv=YOUR-ENVIRONMENT 如果是运行jar文件,需要注意格式是java -Denv=YOUR-ENVIRONMENT -jar xxx.jar

    36810

    Apollo(阿波罗)配置中心Java客户端使用指南使用指南

    application.properties Apollo 1.0.0+支持通过Spring Boot的application.properties文件配置,如 app.id=YOUR-APP-ID..., "http://config-service-url"); 通过Spring Boot的配置文件 可以在Spring Boot的application.properties或bootstrap.properties...比如自己写一个xx-company-apollo-client,该jar包依赖apollo-client,在该jar包中通过spi方式定义自定义的MetaServerProvider实现,然后应用直接依赖..."); 通过Spring Boot的配置文件 可以在Spring Boot的application.properties或bootstrap.properties中指定apollo.cacheDir=...在本地开发模式下,Apollo只会从本地文件读取配置信息,不会从Apollo服务器读取配置。 可以通过下面的步骤开启Apollo本地开发模式。

    16.2K20

    SpringBoot中的配置文件分离

    目的:将配置文件分离,其他位置存放好配置文件后,在启动jar时指定配置文件,实现灵活切换 1.默认的配置文件 1.1 application.properties SpringBoot程序默认从application.properties...中指定使用哪一个文件 spring.profiles.active = dev 启动时,会自动根据填写的参数值,读取对应的配置文件进行加载. 2.如果图里application.properties文件和日志文件也想外置.../config/log4j2.xml 2.自定义的配置文件 2.1 启动时指定 多个配置文件用英文逗号分隔 # 需要在classpath目录中 java -jar xxx.jar --spring.config.location...=classpath:/自定义配置文件1.properties,classpath:/自定义配置文件2.properties # 绝对路径指定 java -jar xxx.jar --Dspring.config.location...=绝对路径\自定义配置文件3.properties 2.2 代码中指定 2.2.1 在application.properties文件中指定一个文件路径 eg:路径配置如下,当前项目config下的path.properties

    3.7K10

    Spring-boot特性(2) 原

    此外,我们可以继续保留默认的 application.properties 文件,通过 java -jar app.jar --name="Spring" 命令的方式来指定 name 参数,由于优先级的问题...如果你不想使用application.properties的格式命名配置文件,那么可以通过环境变量spring.config.name来设置文件名称,例如: $ java -jar myproject.jar...logging.file logging.path 说明 none none 仅仅输出到Console my.log/log/my.log none 从当前位置或绝对路径输出某个日志文件。...日志级别控制 所有的支持日志系统的库都支持从环境变量中读取相关日志级别,所以我们可以将日志级别的描述也记录在环境变量中(例如application.properties文件)。...2个规则即可,但是如果有更特殊的邀请,可以从Spring Boot的日志配置开始了解。

    1.1K20

    Spring Boot -- 如何获取已加载的JAR文件流

    " } 打包成fat jar fat jar是Spring Boot引入的一种新格式,其打包后的结构与war包比较类似,但是可以直接执行并不需要先解压再加载,打包后类似目录如下: BOOT-INF/classes...对于jar in jar因为并不是规范的文件路径,因此无法使用File直接读取,那么该怎么读呢?要解决这个问题需要先了解Spring Boot是怎么做的....利用Handler读取jar Spring Boot启动原理的关键点是实现了jar in jar协议的处理器org.springframework.boot.loader.jar.Handler,读取的主要功能为...Handler中实现的openConnection方法,因此当在项目代码中想要读取jar in jar格式的架包,则可以用该Handler进行资源读取。...文章标题: Spring Boot -- 如何获取已加载的JAR文件流 文章链接: https://mrdear.cn/2019/03/19/framework/spring/在jar中获取jar文件流

    6.1K10

    SpringCloud入门之Spring Boot多环境配置切换指南

    在 spring boot 中,有两种配置文件,一种是application.properties,另一种是application.yml,两种都可以配置spring boot 项目中的一些变量的定义,...Spring Boot提供了一种优先级配置读取的机制来帮助我们从这种困境中走出来。 常规情况下,我们都知道Spring Boot的配置会从application.properties中读取。...实际上,从resource目录下的application.properties文件读取是Spring Boot配置链中的一环而已。...包的时候:Java -jar xxxxxx.jar spring.profiles.actiove=prod 也可以这样启动设置配置文件,但是这只是用于开发和测试 下面提供一个在同一文件中定义多个配置节的详细参考用例...=config-server2 在代码中读取这些配置也是非常方便的,在代码的逻辑中,其实是无需去关心这个配置是从什么地方来的,只用关注能获取什么配置就够了。

    47000

    SpringBoot系列-- jar可执行原理

    spring-boot-maven-plugin SpringBoot 的可执行jar包又称fat jar ,是包含所有第三方依赖的 jar 包,jar 包中嵌入了除 java 虚拟机以外的所有依赖,是一个...普通插件maven-jar-plugin生成的包和spring-boot-maven-plugin生成的包之间的直接区别,是fat jar中主要增加了两部分,第一部分是lib目录,存放的是Maven依赖的...jar包文件,第二部分是spring boot loader相关的类。...其二,如果在这个机制下,由于fat jar中依赖的各个第三方jar文件,并不在程序自己classpath下,也就是说,如果我们采用双亲委派机制的话,根本获取不到我们所依赖的jar包,因此我们需要修改双亲委派机制的查找...我们需要搞懂的是关键代码,以及涉及到的知识点。 我从Maven的自定义插件开始进行追踪,巩固了对Maven的知识点,在这个过程中甚至了解到JDK对jar的读取是有提供对应的工具类。

    1.1K10

    深入解析Spring Boot的可执行JAR:构建、测试与部署的秘密

    Spring Boot可执行JAR简介 在当今Java生态系统中,Spring Boot的可执行JAR(也称为fat jar)已经成为微服务部署的标准方式。...特殊目录结构:采用BOOT-INF目录组织应用代码和依赖库 自定义类加载机制:使用Spring Boot特有的类加载器处理嵌套JAR 为什么需要fat jar?...MANIFEST.MF中的Main-Class和Start-Class 当我们打开一个Spring Boot生成的可执行JAR(fat jar)时,META-INF/MANIFEST.MF文件中的两个关键属性总是格外引人注目...但这种方式存在明显缺陷: 无法识别嵌套在JAR中的JAR文件 不能处理BOOT-INF/classes和BOOT-INF/lib的特殊目录结构 缺乏对Spring Boot分层部署模型的支持 想象一个场景...可执行JAR的启动流程解析 当执行java -jar your-app.jar命令时,系统首先读取META-INF/MANIFEST.MF文件中的Main-Class属性。

    31010

    Springboot实践

    简介(what) 从Spring 3.x开始,Spring社区的发展方向就是弱化xml配置文件而加大注解的戏份,Spring Boot使用@Configuration、@ComponentScan等注解...优点(Why) 集中式配置(application.properties)+注解,简化开发; 内嵌的Tomcat和Jetty容器,可直接打成jar包启动,无需提供Java war包以及繁琐的Web配置...,健康诊断,权限控制; 无冗余代码生成和XML强制配置; 提供支持强大的Restfult风格的编码,非常简洁; fat jar(jar in jar):生成包含所有依赖jar包的独立可运行的JAR...@EnableAutoConfiguration注解会使spring boot自动配置应用(约定胜于配置),这个自动配置是基于依赖的jar,例如当你在添加spring-boot-starter-web依赖后...文件中的配置指令填充它的属性。

    66530

    Spring Boot 配置文件中的花样,看这一篇足矣!

    在快速入门一节中,我们轻松的实现了一个简单的RESTful API应用,体验了一下Spring Boot给我们带来的诸多优点,我们用非常少的代码量就成功的实现了一个Web应用,这是传统的Spring应用无法办到的...自定义参数 我们除了可以在Spring Boot的配置文件中设置各个Starter模块中预定义的配置属性,也可以在配置文件中定义一些我们需要的自定义属性。...包之内,针对不同{profile}环境的配置文件内容,例如:application-{profile}.properties或是YAML定义的配置文件 位于当前应用jar包之外的application.properties...和YAML配置内容 位于当前应用jar包之内的application.properties和YAML配置内容 在@Configuration注解修改的类中,通过@PropertySource注解定义的属性...可以看到,其中第7项和第9项都是从应用jar包之外读取配置文件,所以,实现外部化配置的原理就是从此切入,为其指定外部配置文件的加载位置来取代jar包之内的配置内容。

    1K00

    使用Spring Boot创建docker image

    最最通用的办法就是将Spring boot的应用程序打包成一个fat jar,然后写一个docker file,将这个fat jar制作成为一个docker image然后运行。...Spring boot的fat jar分为三个部分,第一部分就是BOOT-INF, 里面的class目录放的是我们自己编写的class文件。而lib目录存放的是项目依赖的其他jar包。...第三部分是Spring Boot的类加载器,fat jar包的启动是通过Spring Boot的jarLauncher来创建LaunchedURLClassLoader,通过它来加载lib下面的jar包...– SNAPSHOT的依赖jar包 spring-boot-loader – Spring boot的class loader文件 application – 应用程序的class和resources...文件 注意,这里的index文件是有顺序的,它和我们将要添加到docker image中的layer顺序是一致的。

    1.8K21
    领券