Spring Cloud Alibaba环境搭建

文章详细介绍了如何搭建基于SpringCloudAlibaba的微服务环境,包括所需JDK和Maven的版本配置,以及如何使用IntelliJIDEA创建Maven父项目和子项目来构建微服务。此外,还提到了通过配置dependencyManagement来统一管理版本,简化项目依赖,并介绍了CloudNativeAppInitializer作为快速创建项目的方式。
摘要由CSDN通过智能技术生成

环境依赖 

SpringCloud Alibaba 依赖  Java  环境来运行。还需要为此配置  Maven 环境,请确保是在以下版本环境中安装使用: 
1. 64 bit JDK 1.8+; 下载  &  配置 。 1.8.0_131
2. Maven 3.2.x+; 下载  &  配置

 搭建微服务

1.建立微服务项目

1.idea通过Spring Initialize 创建type为Maven POM的父项目 

     父项目主要起到整合多个微服务项目以及让每个微服务项目继承父项目中统一依赖的作用,因此选择Maven POM ,此时新建的项目不会新建src 、.mvn等文件夹。如果没有Maven POM也没有关系,新建 项目后删除src .mvn文件夹即可。

 

2.项目新建Module 项目右键---New--Module

   尽量选择Maven模式创建新项目,因为选择Maven会自动将模块的parent依赖设置为父项目,使用Spring Initializer则不会自动设置,必须手动更改。pom文件加入web依赖。

   新建order、stock模块。两个模块application.yml配置两个不同端口,编写启动类, 配置RestTemplate bean。

 

 

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

    @Bean
    public RestTemplate restTemplate(RestTemplateBuilder builder) {
        return builder.build();
    }
}
@RestController
@RequestMapping("order")
public class OrderController {
    @Autowired
    RestTemplate restTemplate;

    @RequestMapping("/add")
    public String addStock() {
        String res = restTemplate.getForObject("localhost:8081/stock/add",String.class);
        return "调用订单成功";
    }
}

3.启动项目 浏览器访问端口成功,说明两个微服务项目创建成功。

   会发现项目中调用另一个项目的接口时,需要ip:port,如果项目比较多,调用会很混乱,怎么办?微服务架构的注册中心可以解决,只需要服务名就可以。

2.alibaba微服务环境搭建

1.版本说明

      alibaba 版本必须严格按照指定版本配置各个组件。参考官网wiki 版本说明 · alibaba/spring-cloud-alibaba Wiki · GitHub

 

 2.本项目使用 spring boot version 2.3.12.RELEASE;Spring Cloud Version SR12;Spring Cloud Alibaba version 2.2.10-RC1*

3.项目依赖的组件多时,版本控制比较麻烦。

    根据官网的依赖管理,只要在父项目的pom中加入如下内容,指定spring Cloud Alibaba的版本,其他spring cloud alibaba子组件的版本都会自动确定。子项目需要alibaba的子组件时不需要明确指定版本。 好处是此框架的所有小组件的版本都可以统一管理,方便。

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>2.2.9.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

同理dependencyManagement标签可以管理spring cloud alibaba、spring boot、spring cloud三个的版本,当用到这些的子组件时也可以这么填写,如下是一个父项目的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.3.2.RELEASE</version>
<relativePath/> <!‐‐ lookup parent from repository ‐‐>
 </parent>
 <groupId>com.tuling.mall</groupId>
 <artifactId>vip‐spring‐cloud‐alibaba</artifactId>
 <version>0.0.1‐SNAPSHOT</version>
 <name>vip‐spring‐cloud‐alibaba</name>
 <packaging>pom</packaging>
 <description>Demo project for Spring Cloud Alibaba</description>

 <properties>
 <java.version>1.8</java.version>
 <spring‐cloud.version>Hoxton.SR8</spring‐cloud.version>
 <spring‐cloud‐alibaba.version>2.2.5.RELEASE</spring‐cloud‐alibaba.version>
 </properties>

 <dependencyManagement>
 <dependencies>
 <dependency>
 <groupId>org.springframework.cloud</groupId>
 <artifactId>spring‐cloud‐dependencies</artifactId>
 <version>${spring‐cloud.version}</version>
 <type>pom</type>
 <scope>import</scope>
 </dependency>
 <dependency>
 <groupId>com.alibaba.cloud</groupId>
 <artifactId>spring‐cloud‐alibaba‐dependencies</artifactId>
 <version>${spring‐cloud‐alibaba.version}</version>
 <type>pom</type>
 <scope>import</scope>
 </dependency>
 </dependencies>
 </dependencyManagement>


 </project>

4.alibaba微服务,有个类似于spring boot initializer的快捷创建方式,可以方便添加依赖。Cloud Native App Initializer

   通过idea使用alibaba的项目向导,只需要修改url为alibaba的快捷向导url即可。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fang·up·ad

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值