Browse Source

加入nacos

yufeng0528 4 years ago
parent
commit
e01216ab2b

+ 8 - 0
pom.xml

@@ -15,6 +15,7 @@
15 15
         <module>spring5-auth</module>
16 16
         <module>spring5-gateway</module>
17 17
         <module>spring5-admin</module>
18
+        <module>spring5-order</module>
18 19
     </modules>
19 20
 
20 21
 	<properties>
@@ -39,6 +40,13 @@
39 40
                 <type>pom</type>
40 41
                 <scope>import</scope>
41 42
             </dependency>
43
+            <dependency>
44
+                <groupId>com.alibaba.cloud</groupId>
45
+                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
46
+                <version>2.1.0.RELEASE</version>
47
+                <type>pom</type>
48
+                <scope>import</scope>
49
+            </dependency>
42 50
         </dependencies>
43 51
     </dependencyManagement>
44 52
     

+ 5 - 0
spring5-admin/pom.xml

@@ -16,6 +16,11 @@
16 16
     </parent>
17 17
 
18 18
 	<dependencies>
19
+        <!--注册中心-->
20
+        <dependency>
21
+            <groupId>com.alibaba.cloud</groupId>
22
+            <artifactId>spring-cloud-alibaba-nacos-discovery</artifactId>
23
+        </dependency>
19 24
         
20 25
 		<!-- Spring Boot Web 依赖 -->
21 26
 		<dependency>

+ 0 - 3
spring5-admin/src/main/resources/application.yml

@@ -1,6 +1,3 @@
1
-server:
2
-  port: 8752
3
-
4 1
 logging:
5 2
   level:
6 3
     root: INFO

+ 12 - 0
spring5-admin/src/main/resources/bootstrap.yml

@@ -0,0 +1,12 @@
1
+server:
2
+  port: ${SERVER_PORT:8752}
3
+spring:
4
+  application:
5
+    name: admin
6
+  cloud:
7
+    nacos:
8
+      discovery:
9
+        server-addr: ${REGISTER_HOST:192.168.99.100}:${REGISTER_PORT:8848}
10
+      config:
11
+        server-addr: ${REGISTER_HOST:192.168.99.100}:${REGISTER_PORT:8848}
12
+        file-extension: yml

+ 1 - 0
spring5-order/.gitignore

@@ -0,0 +1 @@
1
+/target/

+ 92 - 0
spring5-order/pom.xml

@@ -0,0 +1,92 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
4
+	<modelVersion>4.0.0</modelVersion>
5
+	
6
+	<artifactId>spring5-order</artifactId>
7
+	<packaging>jar</packaging>
8
+	<name>${project.artifactId}</name>
9
+    <description>spring5 demo</description>
10
+	
11
+	<!-- Spring Boot 启动父依赖 -->
12
+	<parent>
13
+        <groupId>com.yaozhitech</groupId>
14
+        <artifactId>spring5</artifactId>
15
+        <version>0.1.0</version>
16
+    </parent>
17
+
18
+	<dependencies>
19
+        
20
+		<!-- Spring Boot Web 依赖 -->
21
+		<dependency>
22
+			<groupId>org.springframework.boot</groupId>
23
+			<artifactId>spring-boot-starter-web</artifactId>
24
+		</dependency>
25
+	
26
+		<!-- Spring Boot Redis 依赖 -->
27
+		<dependency>
28
+			<groupId>org.springframework.boot</groupId>
29
+			<artifactId>spring-boot-starter-data-redis</artifactId>
30
+		</dependency>
31
+		
32
+<!-- 		<dependency> -->
33
+<!--             <groupId>com.alicp.jetcache</groupId> -->
34
+<!--             <artifactId>jetcache-starter-redis</artifactId> -->
35
+<!--             <version>2.6.0.M3</version> -->
36
+<!--         </dependency> -->
37
+
38
+<!-- 		<dependency> -->
39
+<!-- 			<groupId>com.alicp.jetcache</groupId> -->
40
+<!-- 			<artifactId>jetcache-redis-lettuce</artifactId> -->
41
+<!-- 			<version>2.6.0.M3</version> -->
42
+<!-- 		</dependency> -->
43
+			
44
+		<!-- Spring test 依赖 -->
45
+        <dependency>
46
+            <groupId>org.springframework.boot</groupId>
47
+            <artifactId>spring-boot-starter-test</artifactId>
48
+            <scope>test</scope>
49
+        </dependency>
50
+        
51
+        <dependency>
52
+            <groupId>junit</groupId>
53
+            <artifactId>junit</artifactId>
54
+            <scope>test</scope>
55
+        </dependency>
56
+        
57
+        <!-- 集成wireMock来实现mock请求响应。wireMock会自动构建一个虚拟远程服务 -->
58
+		<dependency>
59
+		   <groupId>org.springframework.cloud</groupId>
60
+		   <artifactId>spring-cloud-contract-wiremock</artifactId>
61
+		   <scope>test</scope>
62
+		</dependency>
63
+		
64
+		<!-- 提供打包预定义数据服务 -->
65
+		<dependency>
66
+		   <groupId>org.springframework.cloud</groupId>
67
+		   <artifactId>spring-cloud-starter-contract-stub-runner</artifactId>
68
+		   <scope>test</scope>
69
+		</dependency>
70
+		
71
+		<!-- 自动生成单元测试代码 -->
72
+		<dependency>
73
+		   <groupId>org.springframework.cloud</groupId>
74
+		   <artifactId>spring-cloud-starter-contract-verifier</artifactId>
75
+		   <scope>test</scope>
76
+		</dependency>
77
+
78
+
79
+		<dependency>
80
+			<groupId>com.github.tomakehurst</groupId>
81
+			<artifactId>wiremock-standalone</artifactId>
82
+			<scope>test</scope>
83
+		</dependency>
84
+		
85
+		<dependency>
86
+            <groupId>com.yaozhitech</groupId>
87
+            <artifactId>spring5-auth-client</artifactId>
88
+            <version>0.1.0</version>
89
+        </dependency>
90
+
91
+	</dependencies>
92
+</project>

+ 12 - 0
spring5-order/src/main/java/com/yaozhitech/spring5/Application.java

@@ -0,0 +1,12 @@
1
+package com.yaozhitech.spring5;
2
+
3
+import org.springframework.boot.SpringApplication;
4
+import org.springframework.boot.autoconfigure.SpringBootApplication;
5
+
6
+
7
+@SpringBootApplication
8
+public class Application {
9
+    public static void main(String[] args) {
10
+        SpringApplication.run(Application.class, args);
11
+    }
12
+}

+ 25 - 0
spring5-order/src/main/java/com/yaozhitech/spring5/config/RoleResourceConfiguration.java

@@ -0,0 +1,25 @@
1
+package com.yaozhitech.spring5.config;
2
+
3
+import org.apache.shiro.spring.web.config.DefaultShiroFilterChainDefinition;
4
+import org.apache.shiro.spring.web.config.ShiroFilterChainDefinition;
5
+import org.springframework.context.annotation.Configuration;
6
+
7
+@Configuration
8
+public class RoleResourceConfiguration extends ShiroConfiguration{
9
+	
10
+	@Override
11
+	public ShiroFilterChainDefinition shiroFilterChainDefinition() {
12
+		
13
+		
14
+		DefaultShiroFilterChainDefinition chainDefinition = new DefaultShiroFilterChainDefinition();
15
+//    chainDefinition.addPathDefinition("/login", "noSessionCreation,anon");  //login不做认证,noSessionCreation的作用是用户在操作session时会抛异常
16
+//    chainDefinition.addPathDefinition("/logout", "noSessionCreation,authcToken[permissive]"); //做用户认证,permissive参数的作用是当token无效时也允许请求访问,不会返回鉴权未通过的错误
17
+//    chainDefinition.addPathDefinition("/image/**", "anon"); ,anyRole[admin,manager]
18
+		chainDefinition.addPathDefinition("/**", "noSessionCreation,authcToken"); // 只允许admin或manager角色的用户访问
19
+//		chainDefinition.addPathDefinition("/article/list", "noSessionCreation,authc");
20
+//		chainDefinition.addPathDefinition("/article/*", "noSessionCreation,authc[permissive]");
21
+//		chainDefinition.addPathDefinition("/**", "noSessionCreation,authc"); // 默认进行用户鉴权
22
+		
23
+		return chainDefinition;
24
+	}
25
+}

+ 17 - 0
spring5-order/src/main/java/com/yaozhitech/spring5/controller/OrderController.java

@@ -0,0 +1,17 @@
1
+package com.yaozhitech.spring5.controller;
2
+
3
+import org.springframework.http.ResponseEntity;
4
+import org.springframework.web.bind.annotation.GetMapping;
5
+import org.springframework.web.bind.annotation.PathVariable;
6
+import org.springframework.web.bind.annotation.RequestMapping;
7
+import org.springframework.web.bind.annotation.RestController;
8
+
9
+@RestController
10
+@RequestMapping("/order")
11
+public class OrderController {
12
+
13
+	@GetMapping("/{id}")
14
+	public ResponseEntity<String> read(@PathVariable Long id) {
15
+		return ResponseEntity.ok("ok");
16
+	}
17
+}

+ 22 - 0
spring5-order/src/main/resources/application.yml

@@ -0,0 +1,22 @@
1
+server:
2
+  port: 8752
3
+
4
+logging:
5
+  level:
6
+    root: INFO
7
+    org.springframework.web: INFO
8
+    org.springframework.security: INFO
9
+#    org.springframework.boot.autoconfigure: DEBUG
10
+
11
+spring:
12
+  thymeleaf:
13
+    cache: false
14
+  redis:
15
+    host: 120.55.124.69
16
+    port: 6280
17
+    password: bbztx123456
18
+    timeout: 5000
19
+  
20
+password:
21
+  salt: k12829WhsvnEV$#03b2n          
22
+