前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >猪齿鱼_01_环境搭建(二)_整合业务服务

猪齿鱼_01_环境搭建(二)_整合业务服务

作者头像
shirayner
发布2022-03-11 10:02:07
2430
发布2022-03-11 10:02:07
举报
文章被收录于专栏:Java成神之路Java成神之路

一、前言

前面两节,我们已经完成了猪齿鱼微服务支撑组件的部署;

这一节,我们来看下如何在前面部署好的微服务支撑组件的基础上,进行我们的业务服务的开发。

二、整合业务服务

这里我们将创建一个简单的Demo工程,然后将此工程整合进来。

1.创建工程

1.1 创建SpringBoot工程

创建一个SpringBoot工程即可,工程的GAV如下

groupId:hec-panda-cloud artifactId:panda-cloud-service version:1.0-SNAPSHOT

1.2 修改pom.xml

工程的pom.xml文件内容如下:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="http://maven.apache.org/POM/4.0.0"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

    <groupId>hec-panda-cloud</groupId>
    <artifactId>panda-cloud-service</artifactId>
    <version>1.0-SNAPSHOT</version>
    <modelVersion>4.0.0</modelVersion>

    <!--choerodon-framework-parent dependency-->
    <parent>
        <groupId>io.choerodon</groupId>
        <artifactId>choerodon-framework-parent</artifactId>
        <version>0.6.0.RELEASE</version>
    </parent>

    <!--choerodon-starters dependency-->
    <properties>
        <choerodon.starters.version>0.5.1.RELEASE</choerodon.starters.version>
    </properties>
    <dependencies>
        <!--spring boot-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-undertow</artifactId>
        </dependency>
        <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.cloud</groupId>
            <artifactId>spring-cloud-starter-eureka</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-config-client</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bus-kafka</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.cloud</groupId>
                    <artifactId>spring-cloud-bus</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <!--choerodon starters-->
        <dependency>
            <groupId>io.choerodon</groupId>
            <artifactId>choerodon-starter-oauth-resource</artifactId>
            <version>${choerodon.starters.version}</version>
        </dependency>
        <dependency>
            <groupId>io.choerodon</groupId>
            <artifactId>choerodon-starter-swagger</artifactId>
            <version>${choerodon.starters.version}</version>
        </dependency>
        <dependency>
            <groupId>io.choerodon</groupId>
            <artifactId>choerodon-starter-core</artifactId>
            <version>${choerodon.starters.version}</version>
        </dependency>
        <dependency>
            <groupId>io.choerodon</groupId>
            <artifactId>choerodon-starter-mybatis-mapper</artifactId>
            <version>${choerodon.starters.version}</version>
        </dependency>
        <dependency>
            <groupId>io.choerodon</groupId>
            <artifactId>choerodon-starter-bus</artifactId>
            <version>${choerodon.starters.version}</version>
        </dependency>


        <!--mysql-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>


        <!--监控相关依赖 -->
        <dependency><!-- 如果服务需要监控功能则需要此依赖 -->
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-stream-binder-kafka</artifactId>
        </dependency>

        <dependency><!-- 如果服务需要hystrix监控功能则需要此依赖 -->
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-netflix-hystrix-stream</artifactId>
        </dependency>

        <dependency><!-- 如果服务需要zipkin监控功能则需要此依赖 -->
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-sleuth-stream</artifactId>
        </dependency>

        <!-- 添加cpu监控 -->
        <dependency>
            <groupId>io.choerodon</groupId>
            <artifactId>choerodon-starter-hitoa</artifactId>
            <version>${choerodon.starters.version}</version>
        </dependency>
        <!-- test -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

    </dependencies>

    <build>
        <finalName>app</finalName>
    </build>

</project>

1.3 新建 PandaSystemExtraDataManager.java

此文件是用来将当前工程的接口信息注册到Swagger中。 文件内容如下:

代码语言:javascript
复制
/*
 *
 *  项目名称:choerodon-framework-parent
 *  Copyright @ 2018  Shanghai Hand Co. Ltd.
 *  All right reserved.
 *
 *
 */

package io.choerodon.demo;

import io.choerodon.core.swagger.ChoerodonRouteData;
import io.choerodon.swagger.annotation.ChoerodonExtraData;
import io.choerodon.swagger.custom.extra.ExtraData;
import io.choerodon.swagger.custom.extra.ExtraDataManager;

/** HcbmTemplateExtraDataManager
 *
 * @author yinbo.shi@hand-china.com
 * @date 2018/06/14
 */
@ChoerodonExtraData
public class PandaSystemExtraDataManager implements ExtraDataManager {

    @Override
    public ExtraData getData() {
        ChoerodonRouteData choerodonRouteData = new ChoerodonRouteData();

        choerodonRouteData.setName("panda-system");
        choerodonRouteData.setPath("/panda/system/**");
        choerodonRouteData.setServiceId("panda-system");
        extraData.put(ExtraData.ZUUL_ROUTE_DATA, choerodonRouteData);
        return extraData;
    }
}

2.指定注册中心地址

代码语言:javascript
复制
eureka
  client:
    serviceUrl:
      defaultZone: http://localhost:8000/eureka/
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-10-10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、前言
  • 二、整合业务服务
    • 1.创建工程
      • 1.1 创建SpringBoot工程
      • 1.2 修改pom.xml
      • 1.3 新建 PandaSystemExtraDataManager.java
    • 2.指定注册中心地址
    相关产品与服务
    微服务引擎 TSE
    微服务引擎(Tencent Cloud Service Engine)提供开箱即用的云上全场景微服务解决方案。支持开源增强的云原生注册配置中心(Zookeeper、Nacos 和 Apollo),北极星网格(腾讯自研并开源的 PolarisMesh)、云原生 API 网关(Kong)以及微服务应用托管的弹性微服务平台。微服务引擎完全兼容开源版本的使用方式,在功能、可用性和可运维性等多个方面进行增强。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档