zoukankan      html  css  js  c++  java
  • SpringCloud学习(SPRINGCLOUD微服务实战)一

    SpringCloud学习(SPRINGCLOUD微服务实战)

    springboot入门

    1.配置文件

    1.1可以自定义参数并在程序中使用

    注解@component

    @value

     

    例如

    若配置文件为application-dat.yml


    book.name = spring
    book.author = abc
    @Component
    @PropertySource(value = "classpath:/application-dat.yml")
    public class Book{
    @value("${book.name}")
    private String bookName
       @value("${book.author}")
    private String bookAuthor
    }

    也可以用直接配置前半段配置字符。

    @Component
    @PropertySource(value = "classpath:/application-dat.yml")
    @ConfigurationProperties(prefix = "book")  

    public class Book{

    private String name
    private String author
    }

    此两种方配置相同。

     

    在配置文件中还以引用参数

    book.name = spring
    book.info = ${book.name} chubenshe

    那么book.info 就等于 spring chubanshe

    可以使用随机数

    book.page = ${random,value}

    由此可见springboot可以用在配置中使用一些固定的函数

     

    1.2多环境配置

    因为开发环境中需要开发, 测试,uat测试,生产各个环境运行并查问题

    因此在多套环境的情况下,springboot支持配置多个文件,然后指定生效一个配置文件

    例如

    在资源下面写多个yaml文件

    application-dat.yml 生产环境配置文件

    application-self.yml;自己开发环境文件

    application-test.yml;测试环境配置文件

    然后在写一个总的yml 配置文件让他们生效

    spring.progiles.active = dat //则你项目启动的时候使用的时候生产配置文件

    1.3yaml的格式要求及格

    (a)在配置文件中多一个空格都不行

    (b)在冒号后面就要跟一个 空格

    2.springboot 启动与测试

    2.1启动

    (a) springboot项目用maven install 打成jar包之后 可以用 Java -jar ***.jar的命令直接启动;

    因为springboot里自带tomact。

    (b)使用命令行启动,在启动时可以配置修改属性

    例如

    java -jar ***.jar --book.name = spring cloud

     

    2.2测试

    @RunWith(SpringJUnit4ClassRunner.class)//引入Spring对JUnit4的支

    @SpringApplicationConfiguration(classes=HelloApplicationc1ass)//指定SpringBoot的启动类。

    @WebAppConfiguration//开启Web应用的配置,用于模拟Servletcontext

    MockMvC对象:
    用于模拟调用Controller的接口发起请求,在eest定义的helo
    测试用例中,perforn函数执行一次请求调用,accept用于执行接收的数据类型,
    andExpect用于判断接口返回的期望值。

    @Before:JUnit中定义在测试用例aret内容执行前预加载的内容,这里用来初
    始化对HelloController的模拟。

    注意引入下面的静态引用,让status、content、equa1To函数可用

     

    2.3springboot数据文件加载机制

    1.命令行参数

    2.来自SPRING_APPLICATION_JSON的属性

    3.java:comp/env中的 JNDI 属性

    4.Java系统环境变量

    5.操作系统环境变量

    6.RandomValuePropertySource,随机值,使用random.*` 来定义

    7.jar 包外的 Profile 配置文件,如 application-{profile}.properties 和 YAML 文件

    8.jar 包内的 Profile 配置文件,如 application-{profile}.properties 和 YAML 文件

    9.jar 包外的 Application 配置,如 application.properties 和 application.yml 文件

    10.jar 包内的 Application 配置,如 application.properties 和 application.yml 文件

    11.在@configuation注解修改的类中,通过@propertyssource 注解定义属性

    12.应用默认属性,使用springAppliaction.setDefaultPropeorties定义的内容

    数字越小,优先级越高。

     

    此段中需要学习的额外知识

    JNDI 的理解 - zhchoutai - 博客园 https://www.cnblogs.com/zhchoutai/p/7389089.html

    **JNDI 把这些问题交给J2EE容器(比方weblogic)来配置和管理,程序猿仅仅须要对这些配置和管理进行引用就可以。 是为了解耦,是为了开发出更加可维护、可扩展。

    J2EE 规范要求全部 J2EE 容器都要提供 JNDI 规范的实现。

    3.监控与管理

     下次继续。。。

  • 相关阅读:
    VS快捷键
    IIS部署WCF
    WLAN的优点
    局域网与WAN比较
    局域网拓扑结构
    局域网协议
    局域网介绍
    wifi主要特性
    wifi发展前景
    Wi-Fi与WAPI主要区别
  • 原文地址:https://www.cnblogs.com/PxgComeOn/p/11090561.html
Copyright © 2011-2022 走看看