Skip to content

Commit 37a6042

Browse files
authored
Merge pull request zhoutaoo#98 from zhoutaoo/dev
Dev To Master
2 parents dc3dfdf + 5c4edaf commit 37a6042

File tree

32 files changed

+425
-105
lines changed

32 files changed

+425
-105
lines changed

auth/authentication-client/src/main/java/com/springboot/cloud/auth/client/config/FeignOkHttpConfig.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
package com.springboot.cloud.auth.client.config;
22

33
import feign.Feign;
4-
import okhttp3.ConnectionPool;
5-
import org.springframework.beans.factory.annotation.Autowired;
64
import org.springframework.boot.autoconfigure.AutoConfigureBefore;
75
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
86
import org.springframework.cloud.openfeign.FeignAutoConfiguration;

auth/authentication-client/src/main/java/com/springboot/cloud/auth/client/service/impl/AuthService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public boolean ignoreAuthentication(String url) {
5757

5858
@Override
5959
public boolean hasPermission(Result authResult) {
60-
log.debug("签权结果:", authResult);
60+
log.debug("签权结果:{}", authResult.getData());
6161
return authResult.isSuccess() && (boolean) authResult.getData();
6262
}
6363

auth/authentication-server/src/main/java/com/springboot/cloud/auth/authentication/config/BusConfig.java

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5,30 +5,32 @@
55
import com.fasterxml.jackson.databind.ObjectMapper;
66
import com.springboot.cloud.auth.authentication.events.BusReceiver;
77
import lombok.extern.slf4j.Slf4j;
8-
import org.springframework.amqp.core.Binding;
9-
import org.springframework.amqp.core.BindingBuilder;
10-
import org.springframework.amqp.core.Queue;
11-
import org.springframework.amqp.core.TopicExchange;
8+
import org.springframework.amqp.core.*;
129
import org.springframework.amqp.rabbit.connection.ConnectionFactory;
1310
import org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer;
1411
import org.springframework.amqp.rabbit.listener.adapter.MessageListenerAdapter;
1512
import org.springframework.amqp.support.converter.ContentTypeDelegatingMessageConverter;
1613
import org.springframework.amqp.support.converter.Jackson2JsonMessageConverter;
1714
import org.springframework.amqp.support.converter.MessageConverter;
15+
import org.springframework.beans.factory.annotation.Value;
1816
import org.springframework.context.annotation.Bean;
1917
import org.springframework.context.annotation.Configuration;
2018

2119
@Configuration
2220
@Slf4j
2321
public class BusConfig {
2422

25-
private static final String QUEUE_NAME = "event-organization";
2623
private static final String EXCHANGE_NAME = "spring-boot-exchange";
24+
private static final String ROUTING_KEY = "organization-resource";
25+
26+
@Value("${spring.application.name}")
27+
private String appName;
2728

2829
@Bean
2930
Queue queue() {
30-
log.info("queue name:{}", QUEUE_NAME);
31-
return new Queue(QUEUE_NAME, false);
31+
String queueName = new Base64UrlNamingStrategy(appName + ".").generateName();
32+
log.info("queue name:{}", queueName);
33+
return new Queue(queueName, false);
3234
}
3335

3436
@Bean
@@ -39,15 +41,15 @@ TopicExchange exchange() {
3941

4042
@Bean
4143
Binding binding(Queue queue, TopicExchange exchange) {
42-
log.info("binding {} to {} with {}", queue, exchange, QUEUE_NAME);
43-
return BindingBuilder.bind(queue).to(exchange).with(QUEUE_NAME);
44+
log.info("binding {} to {} with {}", queue, exchange, ROUTING_KEY);
45+
return BindingBuilder.bind(queue).to(exchange).with(ROUTING_KEY);
4446
}
4547

4648
@Bean
47-
SimpleMessageListenerContainer simpleMessageListenerContainer(ConnectionFactory connectionFactory, MessageListenerAdapter messageListenerAdapter) {
48-
log.info("init simpleMessageListenerContainer");
49+
SimpleMessageListenerContainer simpleMessageListenerContainer(ConnectionFactory connectionFactory, MessageListenerAdapter messageListenerAdapter, Queue queue) {
50+
log.info("init simpleMessageListenerContainer {}", queue.getName());
4951
SimpleMessageListenerContainer container = new SimpleMessageListenerContainer(connectionFactory);
50-
container.setQueueNames(BusConfig.QUEUE_NAME);
52+
container.setQueueNames(queue.getName());
5153
container.setMessageListener(messageListenerAdapter);
5254
return container;
5355
}

auth/authentication-server/src/main/resources/application.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,9 @@ feign:
3636

3737
logging:
3838
level:
39+
com.springboot.cloud: debug
3940
org.springframework.web: debug
40-
org.springframework.security: DEBUG
41-
org.apache.ibatis: debug
42-
java.sql.PreparedStatement: debug
41+
org.springframework.security: debug
4342
path: logs/
4443
file:
4544
max-size: 1GB
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535

3636
@Configuration
3737
@EnableAuthorizationServer
38-
public class AuthenticationServerConfig extends AuthorizationServerConfigurerAdapter {
38+
public class AuthorizationServerConfig extends AuthorizationServerConfigurerAdapter {
3939

4040
@Autowired
4141
@Qualifier("authenticationManagerBean")

common/web/src/main/java/com/springboot/cloud/common/web/entity/form/BaseForm.java

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,4 +26,18 @@ public T toPo(Class<T> clazz) {
2626
BeanUtils.copyProperties(this, t);
2727
return t;
2828
}
29+
30+
/**
31+
* From转化为Po,进行后续业务处理
32+
*
33+
* @param id
34+
* @param clazz
35+
* @return
36+
*/
37+
public T toPo(String id, Class<T> clazz) {
38+
T t = BeanUtils.instantiateClass(clazz);
39+
t.setId(id);
40+
BeanUtils.copyProperties(this, t);
41+
return t;
42+
}
2943
}

gateway/gateway-admin/src/main/db/db.sql

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,5 +53,14 @@ VALUES
5353
'[{"name":"StripPrefix","args":{"parts":"1"}}]',
5454
100,
5555
'系统管理相关接口',
56+
'Y', now(), now(), 'system', 'system'),
57+
(104,
58+
'gateway-admin',
59+
'lb://gateway-admin:8445',
60+
'[{"name":"Path","args":{"pattern":"/gateway-admin/**"}}]',
61+
'[{"name":"StripPrefix","args":{"parts":"1"}}]',
62+
100,
63+
'网关管理相关接口',
5664
'Y', now(), now(), 'system', 'system')
5765

66+
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
package com.springboot.cloud.gateway.admin.config;
2+
3+
import com.fasterxml.jackson.annotation.JsonAutoDetect;
4+
import com.fasterxml.jackson.annotation.PropertyAccessor;
5+
import com.fasterxml.jackson.databind.ObjectMapper;
6+
import lombok.extern.slf4j.Slf4j;
7+
import org.springframework.amqp.core.Binding;
8+
import org.springframework.amqp.core.BindingBuilder;
9+
import org.springframework.amqp.core.Queue;
10+
import org.springframework.amqp.core.TopicExchange;
11+
import org.springframework.amqp.support.converter.ContentTypeDelegatingMessageConverter;
12+
import org.springframework.amqp.support.converter.Jackson2JsonMessageConverter;
13+
import org.springframework.amqp.support.converter.MessageConverter;
14+
import org.springframework.context.annotation.Bean;
15+
import org.springframework.context.annotation.Configuration;
16+
17+
@Configuration
18+
@Slf4j
19+
public class BusConfig {
20+
21+
public static final String QUEUE_NAME = "event-gateway";
22+
public static final String EXCHANGE_NAME = "spring-boot-exchange";
23+
public static final String ROUTING_KEY = "gateway-route";
24+
25+
@Bean
26+
Queue queue() {
27+
log.info("queue name:{}", QUEUE_NAME);
28+
return new Queue(QUEUE_NAME, false);
29+
}
30+
31+
@Bean
32+
TopicExchange exchange() {
33+
log.info("exchange:{}", EXCHANGE_NAME);
34+
return new TopicExchange(EXCHANGE_NAME);
35+
}
36+
37+
@Bean
38+
Binding binding(Queue queue, TopicExchange exchange) {
39+
log.info("binding {} to {} with {}", queue, exchange, ROUTING_KEY);
40+
return BindingBuilder.bind(queue).to(exchange).with(ROUTING_KEY);
41+
}
42+
43+
@Bean
44+
public MessageConverter messageConverter() {
45+
ObjectMapper objectMapper = new ObjectMapper();
46+
objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
47+
return new ContentTypeDelegatingMessageConverter(new Jackson2JsonMessageConverter(objectMapper));
48+
}
49+
50+
}

gateway/gateway-admin/src/main/java/com/springboot/cloud/gateway/admin/entity/ov/GatewayRouteVo.java

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,22 +12,37 @@
1212

1313
import java.io.IOException;
1414
import java.util.ArrayList;
15+
import java.util.Date;
1516
import java.util.List;
1617

1718
@EqualsAndHashCode(callSuper = true)
1819
@Data
1920
@Slf4j
2021
public class GatewayRouteVo extends BaseVo {
2122
private String id;
23+
private String routeId;
24+
private String description;
25+
private String status;
2226
private String uri;
2327
private Integer orders;
28+
private String createdBy;
29+
private Date createdTime;
30+
private String updatedBy;
31+
private Date updatedTime;
2432
private List<FilterDefinition> filters = new ArrayList<>();
2533
private List<PredicateDefinition> predicates = new ArrayList<>();
2634

2735
public GatewayRouteVo(GatewayRoute gatewayRoute) {
2836
this.id = gatewayRoute.getId();
37+
this.routeId = gatewayRoute.getRouteId();
2938
this.uri = gatewayRoute.getUri();
39+
this.description = gatewayRoute.getDescription();
40+
this.status = gatewayRoute.getStatus();
3041
this.orders = gatewayRoute.getOrders();
42+
this.createdBy = gatewayRoute.getCreatedBy();
43+
this.createdTime = gatewayRoute.getCreatedTime();
44+
this.updatedBy = gatewayRoute.getUpdatedBy();
45+
this.updatedTime = gatewayRoute.getUpdatedTime();
3146
ObjectMapper objectMapper = new ObjectMapper();
3247
try {
3348
this.filters = objectMapper.readValue(gatewayRoute.getFilters(), new TypeReference<List<FilterDefinition>>() {
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
package com.springboot.cloud.gateway.admin.events;
2+
3+
import com.springboot.cloud.gateway.admin.config.BusConfig;
4+
import lombok.extern.slf4j.Slf4j;
5+
import org.springframework.amqp.rabbit.core.RabbitTemplate;
6+
import org.springframework.amqp.support.converter.MessageConverter;
7+
import org.springframework.beans.factory.annotation.Autowired;
8+
import org.springframework.stereotype.Component;
9+
10+
import javax.annotation.PostConstruct;
11+
12+
@Component
13+
@Slf4j
14+
public class EventSender {
15+
16+
@Autowired
17+
private RabbitTemplate rabbitTemplate;
18+
19+
@Autowired
20+
private MessageConverter messageConverter;
21+
22+
@PostConstruct
23+
public void init() {
24+
rabbitTemplate.setMessageConverter(messageConverter);
25+
}
26+
27+
public void send(String routingKey, Object object) {
28+
log.info("routingKey:{}=>message:{}", routingKey, object);
29+
rabbitTemplate.convertAndSend(BusConfig.EXCHANGE_NAME, routingKey, object);
30+
}
31+
}

0 commit comments

Comments
 (0)