穀粒商場篇】第二天 下(整合篇)


中國加油,武漢加油!

篇幅較長,請配合目錄觀看

項目準備

  1. 穀粒商場篇】第二天 上(代碼篇)
  2. 穀粒商場篇】第二天 中(Linux篇)

1. dubbo整合

1.1 新建gmall-user-service項目(springboot)

1.2 gmall-user-service繼承gmall-parent,並引入相關依賴

<?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>com.wpj.gmall</groupId>
        <artifactId>gmall-parent</artifactId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <groupId>com.wpj.gmall</groupId>
    <artifactId>gmall-user-service</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>gmall-user-service</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <!-- 引入gmall-service-util -->
        <dependency>
            <groupId>com.wpj.gmall</groupId>
            <artifactId>gmall-service-util</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>
        <!-- 引入gmall-api-->
        <dependency>
            <groupId>com.wpj.gmall</groupId>
            <artifactId>gmall-api</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>

        <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>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>

1.3 新建gmall-user-web項目(springboot)

1.4 gmall-user-web繼承gmall-parent,並引入相關依賴

<?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>com.wpj.gmall</groupId>
        <artifactId>gmall-parent</artifactId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <groupId>com.wpj.gmall</groupId>
    <artifactId>gmall-user-web</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>gmall-user-web</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <!-- 引入gmall-web-util -->
        <dependency>
            <groupId>com.wpj.gmall</groupId>
            <artifactId>gmall-web-util</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>
        <!-- 引入gmall-api-->
        <dependency>
            <groupId>com.wpj.gmall</groupId>
            <artifactId>gmall-api</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>

        <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>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>

1.5 gmall-common-util引入dubbo框架

<!-- dubbo框架 -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>dubbo</artifactId>
</dependency>
<!-- 同步註冊中心的服務 -->
<dependency>
    <groupId>com.101tec</groupId>
    <artifactId>zkclient</artifactId>
    <exclusions>
        <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<!-- 整合框架 -->
<dependency>
    <groupId>com.gitee.reger</groupId>
    <artifactId>spring-boot-starter-dubbo</artifactId>
</dependency>

1.6 將gmall-user的service,mapper和application.properties移動到gmall-user-service

在這裏插入圖片描述

1.7 修改UserServiceImpl的@Service的註解

在這裏插入圖片描述

1.8 配置掃描註解

# 項目配置
server.port=8070

# jdbc配置
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/gmall
spring.datasource.username=root
spring.datasource.password=123456

# mybatis配置
mybatis.mapper-locations=classpath:mapper/*Mapper.xml
# 駝峯
mybatis.configuration.map-underscore-to-camel-case=true
# 別名
mybatis.type-aliases-package=com.wpj.gmall.bean

# dubbo的配置
# dubbo中的服務名稱
spring.dubbo.application=user-service
# dubbo的通訊協議名稱
spring.dubbo.protocol.name=dubbo
# zookeeper註冊中心的地址
spring.dubbo.registry.address=47.98.33.215:2181
# zookeeper的通訊協議的名稱
spring.dubbo.registry.protocol=zookeeper
# dubbo的服務的掃描路徑
spring.dubbo.base-package=com.wpj.gmall

1.9 啓動gmall-user-service的程序入口

package com.wpj.gmall.user;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import tk.mybatis.spring.annotation.MapperScan;

@SpringBootApplication
@MapperScan(basePackages = {"com.wpj.gmall.user.mapper"})
public class GmallUserServiceApplication {

    public static void main(String[] args) {
        SpringApplication.run(GmallUserServiceApplication.class, args);
    }

}

1.10 查看主頁

在這裏插入圖片描述

1.11 將gmall-user的controller移動到gmall-user-web

在這裏插入圖片描述

1.12 修改UserController的@Autowired註解

在這裏插入圖片描述

1.13 gmall-user-web配置dubbo

# 服務端口
server.port=8080

# 日誌級別
logging.level.root=debug

# dubbo的配置
# dubbo中的服務名稱
spring.dubbo.application=user-web
# dubbo的通訊協議名稱
spring.dubbo.protocol.name=dubbo
# zookeeper註冊中心的地址
spring.dubbo.registry.address=47.98.33.215:2181
# zookeeper的通訊協議的名稱
spring.dubbo.registry.protocol=zookeeper
# dubbo的服務的掃描路徑
spring.dubbo.base-package=com.wpj.gmall

1.14 啓動gmall-user-web的程序入口

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章