zoukankan      html  css  js  c++  java
  • Spring-Boot自定义Starter实践

    此文已由作者王慎为授权网易云社区发布。

    欢迎访问网易云社区,了解更多网易技术产品运营经验。

    disconf-spring-boot-starter

    使用方法:

    1. 引入maven依赖:

      <dependency>
         <groupId>com.netease.haitao.sc</groupId>
         <artifactId>disconf-spring-boot-starter</artifactId>
         <version>1.0.1</version></dependency>
    2. 在application.properties中按照实际配置定义如下字段

      #disconf zk地址

      disconf.zkHost=10.122.137.135:2181,10.164.166.201:2181,10.164.166.200:2181,10.164.166.199:2181

      #disconf环境

      disconf.env=online

      #disconf申请的分组

      disconf.groupName=sc_jxc_front_config

    3. 代码中可以直接使用@Resource的方式注入ConfigService Bean。

      @Resource

      private ConfigService configService;

    4. 实现代码片段

    kschedule-spring-boot-starter

    1. 引入maven依赖:

       <dependency>
           <groupId>com.netease.haitao.sc</groupId>
           <artifactId>kschedule-spring-boot-starter</artifactId>
           <version>1.0.0</version>
      </dependency>
    2. 在application.properties中按照实际配置定义如下字段

      #kschedule ZK 地址

      kschedule.zkConnectUrl=10.164.166.75:2181,10.122.137.110:2181,10.122.137.109:2181

      #kschedule 分组

      kschedule.groupName=sc-jxc-front

    3. 代码中无需多额外的配置,只需在kschedule平台上定义需要执行的方法即可。

    4. 实现代码片段

    nos-spring-boot-starter

    1. 引入maven依赖:

      <dependency>
         <groupId>com.netease.haitao.sc</groupId>
         <artifactId>nos-spring-boot-starter</artifactId>
         <version>1.0.0</version></dependency>
    2. 在application.properties中按照实际配置定义如下字段

      nos.accessKey=

      nos.secretKey=

    3. 代码中可以直接使用@Resource的方式注入NosClient。

      @Resource

      private NosClient nosClient;

    4. 实现代码片段

    spring-boot-starter-dubbo

    1. 引入maven依赖(需要排除原生dubbo的依赖)。 原实现:https://github.com/dubbo/dubbo-spring-boot-project ,本实现在其基础上支持@Reference注解配置化

      <dependency>
         <groupId>io.dubbo.springboot</groupId>
         <artifactId>spring-boot-starter-dubbo</artifactId>
         <version>1.0.1-kaola-sc</version>
         <exclusions>
             <exclusion>
                 <groupId>com.alibaba</groupId>
                 <artifactId>dubbo</artifactId>
             </exclusion>
         </exclusions></dependency>
    2. 在application.properties中按照实际配置定义如下字段

      #dubbo需要扫描的包 

      spring.dubbo.scan=com.netease.haitao.jxc.front

      #应用名称

      spring.dubbo.application.name=sc-jxc-front

      #环境

      spring.dubbo.application.environment=product

      #ZK地址

      spring.dubbo.registry.address=zookeeper://kaola-zk1.dg.163.org:2181?backup=kaola-zk2.dg.163.org:2181,kaola-zk3.hz.163.org:2181,kaola-> zk4.hz.163.org:2181,kaola-zk5.yq.163.org:2181

      #默认提供dubbo服务分组

      spring.dubbo.provider.group=online

      #默认提供的dubbo服务版本

      spring.dubbo.provider.version=1.0

      #服务端口

      spring.dubbo.protocol.port=-1

      #启动时依赖服务检查

      spring.dubbo.consumer.check=false

      #默认消费服务分组 

      spring.dubbo.consumer.group=online

      #默认消费服务版本

      spring.dubbo.consumer.version=1.0

    3. 代码中可以直接使用@Reference的方式注入依赖接口(允许自定义分组和版本),缺省情况下调用默认分组默认版本的服务。


    网易云免费体验馆,0成本体验20+款云产品!

    更多网易技术、产品、运营经验分享请点击


    相关文章:
    【推荐】 初步探索前端性能测试

  • 相关阅读:
    使用node.js搭建一个简单的后台服务
    node.js连接MySQL数据库
    js将date对象转换为指定格式
    配置angular2运行环境
    简单AJAX请求JSon数据
    正则表达式
    javascript typeof 和 instanceof 的区别和联系
    map和reduce函数的使用
    Github 上管理项目
    微服务资料
  • 原文地址:https://www.cnblogs.com/163yun/p/9803493.html
Copyright © 2011-2022 走看看