推广

Springboot集成dubbo 3.x脚手架

iseeyu2年前 (2024-02-22)推广119

创建一个基础演示工程

选择Springboot的快速构建

maven的基本元素,可以按照自己的习惯进行填写

依赖包引入

由于我们采用的是bom的形式,父工程暂时不需要引入任何依赖

工程存放的物理位置

备课和讲课的电脑可能不一样,所以讲课的时候可能物理位置不是这个,哈哈!~

删除掉与课程无关的文件


3、修改配置文件

原始配置文件如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.5.0</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.jiangzh.course</groupId>
    <artifactId>dubbo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>dubbo_3_study</name>
    <description>dubbo_3学习</description>
    <properties>
        <java.version>1.8</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

修改以后的配置文件:【修改的内容都使用注释进行了概括,直接寻找有注释的位置即可】

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.5.0</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.jiangzh.course</groupId>
    <!-- 修改个逼格更高的artifactId -->
    <artifactId>dubbo-parent</artifactId>
    <version>0.0.1-SNAPSHOT</version>

    <!-- 增加packaging类型 -->
    <packaging>pom</packaging>

    <name>dubbo_3_study</name>
    <description>dubbo_3学习</description>
    <properties>
        <java.version>1.8</java.version>
    </properties>

    <!-- 父工程不进行依赖包引入,会对子工程产生影响 -->
    <!--
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
    -->

    <!-- 父工程做依赖包的管理 -->
    <dependencyManagement>
        <dependencies>

        </dependencies>
    </dependencyManagement>

    <!-- 移除springboot的打包管理,后续在子工程中进行单独处理 -->
    <!--
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
    -->
    
</project>

4、增加dubbo 3的依赖包管理

1、在pom.xml 中的properties中增加dubbo的版本号配置

<properties>
    <java.version>1.8</java.version>
    <!-- 增加dubbo版本号控制 -->
    <dubbo.version>3.0.0.preview</dubbo.version>
</properties>

2、在pom.xml中,增加dependencyManagement相关的依赖管理

    <!-- 父工程做依赖包的管理 -->
    <dependencyManagement>
        <dependencies>
            <!-- 增加dubbo依赖包管理 -->
            <dependency>
                <groupId>org.apache.dubbo</groupId>
                <artifactId>dubbo</artifactId>
                <version>${dubbo.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.dubbo</groupId>
                <artifactId>dubbo-dependencies-zookeeper</artifactId>
                <version>${dubbo.version}</version>
                <type>pom</type>
            </dependency>

            <dependency>
                <groupId>org.apache.zookeeper</groupId>
                <artifactId>zookeeper</artifactId>
                <version>3.7.0</version>
            </dependency>
            <dependency>
                <groupId>org.apache.curator</groupId>
                <artifactId>curator-framework</artifactId>
                <version>5.1.0</version>
            </dependency>
            <dependency>
                <groupId>org.apache.curator</groupId>
                <artifactId>curator-recipes</artifactId>
                <version>5.1.0</version>
            </dependency>
            <dependency>
                <groupId>io.netty</groupId>
                <artifactId>netty-all</artifactId>
                <version>4.1.65.Final</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

5、建立子工程示例

建立子模块

重复建立父工程时的步骤

选择Springboot快速启动

设置Maven坐标

依旧什么也不选,后期我们自己加依赖包

选择存放位置

删除不需要的内容

修改配置文件格式


6、修改父工程和子工程的POM配置文件

6.1 修改子工程的POM配置文件

配置文件位置:

子工程的POM配置文件

修改之前:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.5.0</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.jiangzh.course</groupId>
    <artifactId>dubbo-demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>dubbo-demo</name>
    <description>演示子工程创建</description>
    <properties>
        <java.version>1.8</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

修改之后:【修改的内容都使用注释进行了概括,直接寻找有注释的位置即可】

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <!-- 将Springboot的父工程依赖修改为自己的父工程, 这样可以继承父工程中的Springboot依赖 -->
        <groupId>com.jiangzh.course</groupId>
        <artifactId>dubbo-parent</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <relativePath>../pom.xml</relativePath>
    </parent>
    <groupId>com.jiangzh.course</groupId>
    <artifactId>dubbo-demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>dubbo-demo</name>
    <description>演示子工程创建</description>
    <properties>
        <java.version>1.8</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

6.2 修改父工程的POM配置文件

增加module管理


7、添加日志文件和默认端口号

加入基础配置

server:
  port: 8080
  

logging:
  config: classpath:logback.xml

7.1 增加日志配置

增加配置文件

配置文件内容:

<configuration>
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%highlight(%-5level) (%file:%line\)- %m%n</pattern>
            <charset>UTF-8</charset>
        </encoder>
    </appender>

    <root level="info">
        <appender-ref ref="STDOUT" />
    </root>
</configuration>

扫描二维码推送至手机访问。

版权声明:本文由西安泽虎代运营发布,如需转载请注明出处。

转载请注明出处https://www.0291.com.cn/post/56339.html

相关文章

网站做搜索引擎优化可超越竞争对手。

网站做搜索引擎优化可超越竞争对手。

绝大多数网站的访问量都来自搜索引擎,如果不做,显然行业竞争对手很容易超越。 这似乎不是问题,但我们必须明白,首先,我们可以瞄准,但不能盲目瞄准。例如,在传统行业,减肥是一开始的关键目标。我相信,别说一个,进入主页需要一年甚至两三年的时间。对于小企业来说,投资可能是浪费的。 看来这...

企业视频号如何更换运营者?

为了让视频号的管理更加方便与安全,每个视频号可由管理员设置20个运营者微信号,运营者可进行除帐号设置外的所有,如登录、发表、互动管理等。管理员是不能换的 ,注册的时候,就认证了,以后不支持更换。但是,运营人员是可以增加,最多20个人。他们能做除帐号设置外的所有操作,如登录、...

单页网站搜索引擎优化的利弊是什么?如何优化它。

单页网站搜索引擎优化的利弊是什么?如何优化它。

网站单页SEO有时能达到网站无法达到的效果,所以做好单页SEO工作是非常重要的。然而,有好的和坏的方法来做单页网站的SEO,作为SEO人员,我们必须清楚地了解,以避免那些不好的地方优化。那么,单页网站的利弊是什么?如何优化它?接下来一起看看你吧。 1、受益于集中权重 与网站相比,...

逆向思维:普通人怎么通过写点东西,在自媒体领域中赚钱

逆向思维:普通人怎么通过写点东西,在自媒体领域中赚钱

逆向:普通人怎么通过写点东西,在自媒体领域。为什么你无法通过自媒体赚钱?很多人就是认为自己不会写文案,所以就不敢写东西去自媒体发布。一位好友在思维实践群里提问。自己学过很多付费课程,就是知道了做不到,所以现在纠结,不知道自己应该怎么做?知信行者反问好友,为什么做不到,有谁在...

OPPO应用商店非标广告投放流程

OPPO应用商店非标广告投放流程

一、 投放流程 1.  CP常规运营活动 非标需求由对应商务进行统一处理 2.  OPPO平台自主策划活动   相关阅读: 1.OPPO市场广告投放流程竞价展示收费标准介绍 2.OPPO应用市场信息流...

inspriir creation – 社交网络宣传方案

inspriir creation – 社交网络宣传方案

为何要做Facebook / Twitter/ Linked in /YouTube Marketing? 跟据调查,Facebook 全球现时已超过5亿用户,以下是网站访客量统计公司,Alexa对Facebook的统计: Facebook Profile – Faceboo...

现在,非常期待与您的又一次邂逅

我们努力让每一部企业宣传片和抖音短视频成为商业大片