zoukankan      html  css  js  c++  java
  • 001 项目的基础配置

    一 .概述

    在本次的springcloud之中,我们使用Maven来管理我们的整个内容,为了方便后面的演示,本次将基本的内容搭建起来.

    在springcloud之中,版本是一个比较重要的话题,

    上面是官网给出的适配模式,我们本次使用1.5x版本的springboot和E版本的springcloud.

    二 .搭建父项目

        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>1.5.9.RELEASE</version>
            <relativePath />
        </parent>
    
        <dependencyManagement>
            <dependencies>
                <dependency>
                    <groupId>org.springframework.cloud</groupId>
                    <artifactId>spring-cloud-dependencies</artifactId>
                    <version>Edgware.SR5</version>
                    <type>pom</type>
                    <scope>import</scope>
                </dependency>
            </dependencies>
        </dependencyManagement>
    
        <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <configuration>
                        <target>1.8</target>
                        <source>1.8</source>
                    </configuration>
                </plugin>
            </plugins>
        </build>

    三 .搭建公共模块

    在后面我们常常需要使用的一些公共模块,本次我们直接将这一部分的内容抽成一个公共的模块.

      <parent>
        <groupId>com.trek.springcloud</groupId>
        <artifactId>springcloud-parent</artifactId>
        <version>0.0.1-SNAPSHOT</version>
      </parent>
      <artifactId>springcloud-common</artifactId>

    其中common模块是依赖于父项目的.

    四 .搭建微服务提供者

    [1]创建springcloud-producer子模块,追加maven的配置.

            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>

    [2]编写一个controller

    @RestController
    public class UserService {
    
        @Value("${server.port}")
        private String location;
        
        @GetMapping("/user/{id}")
        public User findUserById(@PathVariable("id") int id) {
            return new User(id,"trke",location);
        }
    }

    [3]编写配置文件

    server:
      port: 8000

    五 .搭建微服务的消费者

    [1]引入依赖

    <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
            <dependency>
                <groupId>com.trek.springcloud</groupId>
                <artifactId>springcloud-common</artifactId>
                <version>0.0.1-SNAPSHOT</version>
            </dependency>

    [2]添加启动类

    @SpringBootApplication
    public class ConsumerStarter {
        
        public static void main(String[] args) {
            SpringApplication.run(ConsumerStarter.class, args);
        }
        
        @Bean
        public RestTemplate restTemplate() {
            return new RestTemplate();
        }
    }

    为了访问微服务,我们增加一个RestTemplate的模板对象.

    [3]访问微服务

    @RestController
    public class UserController {
        
        @Resource
        private RestTemplate restTemplate;
        
        @GetMapping("user/{id}")
        public User queryUser(@PathVariable("id") int id) {
            return restTemplate.getForObject("http://127.0.0.1:8000/user/"+id, User.class);
        }
    }

    [4]配置文件

    server:
      port: 9000
  • 相关阅读:
    PHP书写规范 PHP Coding Standard
    PHP开发编码规范.
    javascript hasOwnProperty 函数
    PHP::转义与反转义函数 (POST/GET/COOKIE)
    PHP 单一入口程序
    SET_INCLUDE_PATH详细解释
    PHP类命名规范
    管理软件本质论
    数据驱动
    脚本适用场合
  • 原文地址:https://www.cnblogs.com/trekxu/p/10462812.html
Copyright © 2011-2022 走看看