Parcourir la source

Merge branch 'develop' of http://git.ycjcjy.com/fuxingfan/smartCommunity into develop

傅行帆 il y a 6 ans
Parent
révision
b142a41738

+ 47
- 0
CODE/smart-community/app-api/pom.xml Voir le fichier

@@ -22,6 +22,10 @@
22 22
 		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
23 23
 		<java.version>1.8</java.version>
24 24
 		<spring-cloud.version>Finchley.SR1</spring-cloud.version>
25
+		<spring-session-jdbc.version>2.0.5.RELEASE</spring-session-jdbc.version>
26
+		<logback.version>1.1.6</logback.version>
27
+		<logback.access.version>1.1.2</logback.access.version>
28
+		<commons.logging.version>1.2</commons.logging.version>
25 29
 	</properties>
26 30
 
27 31
 	<dependencies>
@@ -85,6 +89,49 @@
85 89
 			<artifactId>spring-boot-starter-test</artifactId>
86 90
 			<scope>test</scope>
87 91
 		</dependency>
92
+
93
+		<dependency>
94
+			<groupId>org.springframework.boot</groupId>
95
+			<artifactId>spring-boot-starter-jdbc</artifactId>
96
+		</dependency>
97
+
98
+		<dependency>
99
+			<groupId>org.springframework.session</groupId>
100
+			<artifactId>spring-session-jdbc</artifactId>
101
+			<version>${spring-session-jdbc.version}</version>
102
+		</dependency>
103
+
104
+		<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
105
+		<dependency>
106
+			<groupId>org.projectlombok</groupId>
107
+			<artifactId>lombok</artifactId>
108
+			<version>1.18.2</version>
109
+			<scope>provided</scope>
110
+		</dependency>
111
+
112
+		<!-- logback -->
113
+		<dependency>
114
+			<groupId>ch.qos.logback</groupId>
115
+			<artifactId>logback-core</artifactId>
116
+			<version>${logback.version}</version>
117
+		</dependency>
118
+		<dependency>
119
+			<groupId>ch.qos.logback</groupId>
120
+			<artifactId>logback-classic</artifactId>
121
+			<version>${logback.version}</version>
122
+		</dependency>
123
+		<dependency>
124
+			<groupId>ch.qos.logback</groupId>
125
+			<artifactId>logback-access</artifactId>
126
+			<version>${logback.access.version}</version>
127
+		</dependency>
128
+		<dependency>
129
+			<groupId>commons-logging</groupId>
130
+			<artifactId>commons-logging</artifactId>
131
+			<version>${commons.logging.version}</version>
132
+		</dependency>
133
+
134
+
88 135
 	</dependencies>
89 136
 
90 137
 	<dependencyManagement>

+ 21
- 0
CODE/smart-community/app-api/src/main/java/com/community/huiju/config/HttpSessionConfig.java Voir le fichier

@@ -0,0 +1,21 @@
1
+package com.community.huiju.config;
2
+
3
+import org.springframework.context.annotation.Bean;
4
+import org.springframework.context.annotation.Configuration;
5
+import org.springframework.session.jdbc.config.annotation.web.http.EnableJdbcHttpSession;
6
+import org.springframework.session.web.http.HeaderHttpSessionIdResolver;
7
+import org.springframework.session.web.http.HttpSessionIdResolver;
8
+
9
+/**
10
+ * @author weiximei
11
+ */
12
+@Configuration
13
+@EnableJdbcHttpSession
14
+public class HttpSessionConfig {
15
+
16
+    @Bean
17
+    public HttpSessionIdResolver httpSessionIdResolver() {
18
+        return HeaderHttpSessionIdResolver.xAuthToken();
19
+    }
20
+
21
+}

+ 34
- 0
CODE/smart-community/app-api/src/main/java/com/community/huiju/config/entity/UserElement.java Voir le fichier

@@ -0,0 +1,34 @@
1
+package com.community.huiju.config.entity;
2
+
3
+import lombok.AllArgsConstructor;
4
+import lombok.Data;
5
+import lombok.NoArgsConstructor;
6
+
7
+import java.io.Serializable;
8
+import java.util.Date;
9
+
10
+/**
11
+ * session 基础类
12
+ */
13
+@Data
14
+@AllArgsConstructor
15
+@NoArgsConstructor
16
+public class UserElement implements Serializable {
17
+
18
+    /** 用户唯一标识符 **/
19
+    private Integer id;
20
+
21
+    /** 用户名 **/
22
+    private String userName;
23
+
24
+    /** 登陆名 **/
25
+    private String loginName;
26
+
27
+    /** 邮箱 **/
28
+    private String email;
29
+
30
+    /** 用户状态 **/
31
+    private String status;
32
+
33
+
34
+}

+ 24
- 0
CODE/smart-community/app-api/src/main/java/com/community/huiju/controller/TestController.java Voir le fichier

@@ -1,10 +1,12 @@
1 1
 package com.community.huiju.controller;
2 2
 
3
+import com.community.huiju.config.entity.UserElement;
3 4
 import com.community.huiju.model.ScUser;
4 5
 import com.community.huiju.service.ScUserServiceI;
5 6
 import com.community.huiju.microController.MicroTestController;
6 7
 import io.swagger.annotations.Api;
7 8
 import io.swagger.annotations.ApiOperation;
9
+import lombok.extern.slf4j.Slf4j;
8 10
 import org.springframework.beans.factory.annotation.Autowired;
9 11
 import org.springframework.beans.factory.annotation.Value;
10 12
 import org.springframework.cloud.context.config.annotation.RefreshScope;
@@ -13,6 +15,9 @@ import org.springframework.web.bind.annotation.RequestMethod;
13 15
 import org.springframework.web.bind.annotation.ResponseBody;
14 16
 import org.springframework.web.bind.annotation.RestController;
15 17
 
18
+import javax.servlet.http.HttpServletRequest;
19
+import javax.servlet.http.HttpSession;
20
+import java.util.Arrays;
16 21
 import java.util.List;
17 22
 
18 23
 /**
@@ -23,6 +28,7 @@ import java.util.List;
23 28
 @RefreshScope
24 29
 @RequestMapping("/client2")
25 30
 @Api("eureka-client2的测试controller的API")
31
+@Slf4j
26 32
 public class TestController {
27 33
     
28 34
     @Autowired
@@ -47,4 +53,22 @@ public class TestController {
47 53
     public List<ScUser> getMicroUser(){
48 54
         return microTestController.getUser();
49 55
     }
56
+
57
+    /**
58
+     * 测试session
59
+     * @param request
60
+     * @param session
61
+     * @return
62
+     */
63
+    @RequestMapping(value = "/getUserElement",method = RequestMethod.GET)
64
+    public UserElement getUserElement(HttpServletRequest request, HttpSession session){
65
+        log.info("sessionId: {}", session.getId());
66
+        UserElement userElement = new UserElement();
67
+        userElement.setId(1);
68
+        userElement.setEmail("907147608@qq.com");
69
+        userElement.setUserName("weiximei");
70
+        userElement.setLoginName("weiximei");
71
+        userElement.setStatus("1");
72
+        return userElement;
73
+    }
50 74
 }

+ 3
- 1
CODE/smart-community/app-api/src/main/java/com/community/huiju/model/ScUser.java Voir le fichier

@@ -1,10 +1,12 @@
1 1
 package com.community.huiju.model;
2 2
 
3
+import java.io.Serializable;
4
+
3 5
 /**
4 6
  * @author FXF
5 7
  * @date 2018-09-19
6 8
  */
7
-public class ScUser {
9
+public class ScUser implements Serializable {
8 10
 	private Integer id;
9 11
 	
10 12
 	private String userName;

+ 4
- 0
CODE/smart-community/app-api/src/main/resources/bootstrap.yml Voir le fichier

@@ -11,7 +11,11 @@ spring:
11 11
       discovery:
12 12
         enabled: true
13 13
         serviceId: config-server
14
+  session:
15
+    store-type: jdbc
14 16
 eureka:
15 17
   client:
16 18
     service-url:
17 19
       defaultZone: http://localhost:8080/eureka/
20
+logging:
21
+  config: classpath:logback.xml

+ 61
- 0
CODE/smart-community/app-api/src/main/resources/logback.xml Voir le fichier

@@ -0,0 +1,61 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<configuration>
3
+    <property name="LOG_HOME" value="/logs/smartCommunity/app-api" />
4
+
5
+    <appender name="Console" class="ch.qos.logback.core.ConsoleAppender">
6
+        <encoder>
7
+            <pattern>%d{yyyy/MM/dd-HH:mm:ss} [%thread] %-5level %logger{16} - %msg%n</pattern>
8
+        </encoder>
9
+    </appender>
10
+
11
+    <appender name="normalLog"
12
+              class="ch.qos.logback.core.rolling.RollingFileAppender">
13
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
14
+            <FileNamePattern>${LOG_HOME}/web.normal.%d{yyyy-MM-dd}.log
15
+            </FileNamePattern>
16
+            <MaxHistory>30</MaxHistory>
17
+        </rollingPolicy>
18
+        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
19
+            <maxFileSize>10MB</maxFileSize>
20
+        </triggeringPolicy>
21
+        <layout class="ch.qos.logback.classic.PatternLayout">
22
+            <pattern>%d{yyyy/MM/dd-HH:mm:ss} [%thread] %-5level %logger{16} - %msg%n
23
+            </pattern>
24
+        </layout>
25
+        <filter class="ch.qos.logback.classic.filter.LevelFilter">
26
+            <level>ERROR</level>
27
+            <onMatch>DENY</onMatch>
28
+            <onMismatch>ACCEPT</onMismatch>
29
+        </filter>
30
+    </appender>
31
+    <appender name="errorLog"
32
+              class="ch.qos.logback.core.rolling.RollingFileAppender">
33
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
34
+            <FileNamePattern>${LOG_HOME}/web.error.%d{yyyy-MM-dd}.log
35
+            </FileNamePattern>
36
+            <MaxHistory>30</MaxHistory>
37
+        </rollingPolicy>
38
+        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
39
+            <maxFileSize>10MB</maxFileSize>
40
+        </triggeringPolicy>
41
+        <layout class="ch.qos.logback.classic.PatternLayout">
42
+            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{16} - %msg%n
43
+            </pattern>
44
+        </layout>
45
+        <filter class="ch.qos.logback.classic.filter.LevelFilter">
46
+            <level>ERROR</level>
47
+            <onMatch>ACCEPT</onMatch>
48
+            <onMismatch>DENY</onMismatch>
49
+        </filter>
50
+    </appender>
51
+
52
+
53
+    <logger name="com.community" level="debug" >
54
+        <appender-ref ref="normalLog" />
55
+        <appender-ref ref="errorLog" />
56
+    </logger>
57
+
58
+    <root level="info">
59
+        <appender-ref ref="Console" />
60
+    </root>
61
+</configuration>

+ 1
- 1
CODE/smart-community/app-api/src/main/resources/mapper/ScUserMapper.xml Voir le fichier

@@ -1,6 +1,6 @@
1 1
 <?xml version="1.0" encoding="UTF-8"?>
2 2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
3
-<mapper namespace="ScUserMapper">
3
+<mapper namespace="com.community.huiju.dao.ScUserMapper">
4 4
 
5 5
     <parameterMap id="paramMap" type="ScUser"></parameterMap>
6 6
 

+ 42
- 12
CODE/smart-community/zuul/pom.xml Voir le fichier

@@ -22,6 +22,10 @@
22 22
 		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
23 23
 		<java.version>1.8</java.version>
24 24
 		<spring-cloud.version>Finchley.SR1</spring-cloud.version>
25
+		<spring-session-jdbc.version>2.0.5.RELEASE</spring-session-jdbc.version>
26
+		<logback.version>1.1.6</logback.version>
27
+		<logback.access.version>1.1.2</logback.access.version>
28
+		<commons.logging.version>1.2</commons.logging.version>
25 29
 	</properties>
26 30
 
27 31
 	<dependencies>
@@ -69,23 +73,49 @@
69 73
 
70 74
 		</dependency>
71 75
 
72
-		<!--<dependency>-->
73
-			<!--<groupId>org.springframework.session</groupId>-->
74
-			<!--<artifactId>spring-session</artifactId>-->
75
-			<!--<version>1.3.3.RELEASE</version>-->
76
-		<!--</dependency>-->
77
-
78
-		<dependency>
79
-			<groupId>org.springframework.session</groupId>
80
-			<artifactId>spring-session-jdbc</artifactId>
81
-			<version>2.0.5.RELEASE</version>
82
-		</dependency>
83
-
84 76
         <dependency>
85 77
             <groupId>mysql</groupId>
86 78
             <artifactId>mysql-connector-java</artifactId>
87 79
             <version>8.0.12</version>
88 80
         </dependency>
81
+
82
+
83
+        <dependency>
84
+            <groupId>org.springframework.session</groupId>
85
+            <artifactId>spring-session-jdbc</artifactId>
86
+            <version>${spring-session-jdbc.version}</version>
87
+        </dependency>
88
+
89
+        <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
90
+        <dependency>
91
+            <groupId>org.projectlombok</groupId>
92
+            <artifactId>lombok</artifactId>
93
+            <version>1.18.2</version>
94
+            <scope>provided</scope>
95
+        </dependency>
96
+
97
+        <!-- logback -->
98
+        <dependency>
99
+            <groupId>ch.qos.logback</groupId>
100
+            <artifactId>logback-core</artifactId>
101
+            <version>${logback.version}</version>
102
+        </dependency>
103
+        <dependency>
104
+            <groupId>ch.qos.logback</groupId>
105
+            <artifactId>logback-classic</artifactId>
106
+            <version>${logback.version}</version>
107
+        </dependency>
108
+        <dependency>
109
+            <groupId>ch.qos.logback</groupId>
110
+            <artifactId>logback-access</artifactId>
111
+            <version>${logback.access.version}</version>
112
+        </dependency>
113
+        <dependency>
114
+            <groupId>commons-logging</groupId>
115
+            <artifactId>commons-logging</artifactId>
116
+            <version>${commons.logging.version}</version>
117
+        </dependency>
118
+
89 119
 	</dependencies>
90 120
 
91 121
 	<dependencyManagement>

+ 33
- 0
CODE/smart-community/zuul/src/main/java/com/community/huiju/config/entity/UserElement.java Voir le fichier

@@ -0,0 +1,33 @@
1
+package com.community.huiju.config.entity;
2
+
3
+import lombok.AllArgsConstructor;
4
+import lombok.Data;
5
+import lombok.NoArgsConstructor;
6
+
7
+import java.io.Serializable;
8
+
9
+/**
10
+ * session 基础类
11
+ */
12
+@Data
13
+@AllArgsConstructor
14
+@NoArgsConstructor
15
+public class UserElement implements Serializable {
16
+
17
+    /** 用户唯一标识符 **/
18
+    private Integer id;
19
+
20
+    /** 用户名 **/
21
+    private String userName;
22
+
23
+    /** 登陆名 **/
24
+    private String loginName;
25
+
26
+    /** 邮箱 **/
27
+    private String email;
28
+
29
+    /** 用户状态 **/
30
+    private String status;
31
+
32
+
33
+}

+ 7
- 14
CODE/smart-community/zuul/src/main/resources/bootstrap.yml Voir le fichier

@@ -13,22 +13,15 @@ spring:
13 13
         enabled: true
14 14
         serviceId: config-server
15 15
   session:
16
-    #    jdbc:
17
-    #      schema: classpath:org/springframework/session/jdbc/schema-mysql.sql
18
-    #      table-name: tb_session
19
-    #      initialize-schema: embedded
20 16
     store-type: jdbc
21
-  datasource:
22
-    url: jdbc:mysql://rm-uf6z3z6jq11x653d77o.mysql.rds.aliyuncs.com:3306/smart_community?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true
23
-    username: root
24
-    password: DQ@0lW##kBb2+-jPZC1s$Ma0h5$9W((q
25
-    driver-class-name: com.mysql.jdbc.Driver
17
+#  datasource:
18
+#    url: jdbc:mysql://rm-uf6z3z6jq11x653d77o.mysql.rds.aliyuncs.com:3306/smart_community?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true
19
+#    username: root
20
+#    password: DQ@0lW##kBb2+-jPZC1s$Ma0h5$9W((q
21
+#    driver-class-name: com.mysql.jdbc.Driver
26 22
 eureka:
27 23
   client:
28 24
     service-url:
29 25
       defaultZone: http://localhost:8080/eureka/
30
-zuul:
31
-  routes:
32
-    user-server:
33
-      path: /user-server/**
34
-      service-id: user-server
26
+logging:
27
+  config: classpath:logback.xml

+ 61
- 0
CODE/smart-community/zuul/src/main/resources/logback.xml Voir le fichier

@@ -0,0 +1,61 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<configuration>
3
+    <property name="LOG_HOME" value="/logs/smartCommunity/zuul" />
4
+
5
+    <appender name="Console" class="ch.qos.logback.core.ConsoleAppender">
6
+        <encoder>
7
+            <pattern>%d{yyyy/MM/dd-HH:mm:ss} [%thread] %-5level %logger{16} - %msg%n</pattern>
8
+        </encoder>
9
+    </appender>
10
+
11
+    <appender name="normalLog"
12
+              class="ch.qos.logback.core.rolling.RollingFileAppender">
13
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
14
+            <FileNamePattern>${LOG_HOME}/web.normal.%d{yyyy-MM-dd}.log
15
+            </FileNamePattern>
16
+            <MaxHistory>30</MaxHistory>
17
+        </rollingPolicy>
18
+        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
19
+            <maxFileSize>10MB</maxFileSize>
20
+        </triggeringPolicy>
21
+        <layout class="ch.qos.logback.classic.PatternLayout">
22
+            <pattern>%d{yyyy/MM/dd-HH:mm:ss} [%thread] %-5level %logger{16} - %msg%n
23
+            </pattern>
24
+        </layout>
25
+        <filter class="ch.qos.logback.classic.filter.LevelFilter">
26
+            <level>ERROR</level>
27
+            <onMatch>DENY</onMatch>
28
+            <onMismatch>ACCEPT</onMismatch>
29
+        </filter>
30
+    </appender>
31
+    <appender name="errorLog"
32
+              class="ch.qos.logback.core.rolling.RollingFileAppender">
33
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
34
+            <FileNamePattern>${LOG_HOME}/web.error.%d{yyyy-MM-dd}.log
35
+            </FileNamePattern>
36
+            <MaxHistory>30</MaxHistory>
37
+        </rollingPolicy>
38
+        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
39
+            <maxFileSize>10MB</maxFileSize>
40
+        </triggeringPolicy>
41
+        <layout class="ch.qos.logback.classic.PatternLayout">
42
+            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{16} - %msg%n
43
+            </pattern>
44
+        </layout>
45
+        <filter class="ch.qos.logback.classic.filter.LevelFilter">
46
+            <level>ERROR</level>
47
+            <onMatch>ACCEPT</onMatch>
48
+            <onMismatch>DENY</onMismatch>
49
+        </filter>
50
+    </appender>
51
+
52
+
53
+    <logger name="com.community" level="debug" >
54
+        <appender-ref ref="normalLog" />
55
+        <appender-ref ref="errorLog" />
56
+    </logger>
57
+
58
+    <root level="info">
59
+        <appender-ref ref="Console" />
60
+    </root>
61
+</configuration>