基础版本完成
This commit is contained in:
		@@ -18,6 +18,10 @@
 | 
			
		||||
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 | 
			
		||||
    </properties>
 | 
			
		||||
    <dependencies>
 | 
			
		||||
        <dependency>
 | 
			
		||||
            <groupId>org.springframework.cloud</groupId>
 | 
			
		||||
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
 | 
			
		||||
        </dependency>
 | 
			
		||||
        <dependency>
 | 
			
		||||
            <groupId>org.springframework.boot</groupId>
 | 
			
		||||
            <artifactId>spring-boot-starter-web</artifactId>
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										22
									
								
								borrow-service/src/main/java/com/test/config/BeanConfig.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								borrow-service/src/main/java/com/test/config/BeanConfig.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,22 @@
 | 
			
		||||
package com.test.config;
 | 
			
		||||
 | 
			
		||||
import org.springframework.cloud.client.loadbalancer.LoadBalanced;
 | 
			
		||||
import org.springframework.context.annotation.Bean;
 | 
			
		||||
import org.springframework.context.annotation.Configuration;
 | 
			
		||||
import org.springframework.web.client.RestTemplate;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * ClassName: BeanConfiguration
 | 
			
		||||
 * Package: com.test.config
 | 
			
		||||
 *
 | 
			
		||||
 * @author yovinchen
 | 
			
		||||
 * @Create 2023/8/15 10:08
 | 
			
		||||
 */
 | 
			
		||||
@Configuration
 | 
			
		||||
public class BeanConfig {
 | 
			
		||||
    @Bean
 | 
			
		||||
    @LoadBalanced
 | 
			
		||||
    RestTemplate template(){
 | 
			
		||||
        return new RestTemplate();
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,7 +1,6 @@
 | 
			
		||||
package com.test.service.impl;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
import com.test.entity.Book;
 | 
			
		||||
import com.test.entity.Borrow;
 | 
			
		||||
import com.test.entity.User;
 | 
			
		||||
@@ -28,16 +27,19 @@ public class BorrowServiceImpl implements BorrowService {
 | 
			
		||||
    @Resource
 | 
			
		||||
    BorrowMapper mapper;
 | 
			
		||||
 | 
			
		||||
    @Resource
 | 
			
		||||
    RestTemplate template;
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public UserBorrowDetail getUserBorrowDetailByUid(int uid) {
 | 
			
		||||
        List<Borrow> borrow = mapper.getBorrowsByUid(uid);
 | 
			
		||||
        //RestTemplate支持多种方式的远程调用
 | 
			
		||||
        RestTemplate template = new RestTemplate();
 | 
			
		||||
        //这里通过调用getForObject来请求其他服务,并将结果自动进行封装
 | 
			
		||||
//        //RestTemplate支持多种方式的远程调用
 | 
			
		||||
//        RestTemplate template = new RestTemplate();
 | 
			
		||||
//        这里通过调用getForObject来请求其他服务,并将结果自动进行封装
 | 
			
		||||
        //获取User信息
 | 
			
		||||
        User user = template.getForObject("http://localhost:8101/user/" + uid, User.class);
 | 
			
		||||
        User user = template.getForObject("http://userservice/user/" + uid, User.class);
 | 
			
		||||
        //获取每一本书的详细信息
 | 
			
		||||
        List<Book> bookList = borrow.stream().map(b -> template.getForObject("http://localhost:8201/book/" + b.getBid(), Book.class)).collect(Collectors.toList());
 | 
			
		||||
        List<Book> bookList = borrow.stream().map(b -> template.getForObject("http://bookservice/book/" + b.getBid(), Book.class)).collect(Collectors.toList());
 | 
			
		||||
        return new UserBorrowDetail(user, bookList);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,15 @@
 | 
			
		||||
server:
 | 
			
		||||
  port: 8301
 | 
			
		||||
spring:
 | 
			
		||||
  application:
 | 
			
		||||
    name: borrowservice
 | 
			
		||||
  datasource:
 | 
			
		||||
    driver-class-name: com.mysql.cj.jdbc.Driver
 | 
			
		||||
    url: jdbc:mysql://43.143.164.194:3306/mac
 | 
			
		||||
    username: mac
 | 
			
		||||
    password: mactest
 | 
			
		||||
eureka:
 | 
			
		||||
  client:
 | 
			
		||||
    # 跟上面一样,需要指向Eureka服务端地址,这样才能进行注册
 | 
			
		||||
    service-url:
 | 
			
		||||
      defaultZone: http://localhost:8888/eureka
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user