diff --git a/.gitignore b/.gitignore
index 8b40d82..eb59f65 100755
--- a/.gitignore
+++ b/.gitignore
@@ -49,3 +49,4 @@ build/
/han-note-kv/han-note-kv-biz/src/main/resources/application-prod.yml
/han-note-kv/han-note-kv-biz/logs/
/han-note-note/han-note-note-biz/src/main/resources/application-dev.yml
+/han-note-user-relation/han-note-user-relation-biz/src/main/resources/application-dev.yml
diff --git a/.idea/encodings.xml b/.idea/encodings.xml
index 8c6bb9d..a79ed8e 100755
--- a/.idea/encodings.xml
+++ b/.idea/encodings.xml
@@ -29,6 +29,12 @@
+
+
+
+
+
+
diff --git a/han-note-user-relation/han-note-user-relation-api/pom.xml b/han-note-user-relation/han-note-user-relation-api/pom.xml
new file mode 100644
index 0000000..1afc88a
--- /dev/null
+++ b/han-note-user-relation/han-note-user-relation-api/pom.xml
@@ -0,0 +1,25 @@
+
+ 4.0.0
+
+
+ com.hanserwei
+ han-note-user-relation
+ ${revision}
+
+
+
+ jar
+
+ han-note-user-relation-api
+ ${project.artifactId}
+ RPC层, 供其他服务调用
+
+
+
+ com.hanserwei
+ hanserwei-common
+
+
+
+
diff --git a/han-note-user-relation/han-note-user-relation-biz/pom.xml b/han-note-user-relation/han-note-user-relation-biz/pom.xml
new file mode 100644
index 0000000..9631123
--- /dev/null
+++ b/han-note-user-relation/han-note-user-relation-biz/pom.xml
@@ -0,0 +1,103 @@
+
+ 4.0.0
+
+
+ com.hanserwei
+ han-note-user-relation
+ ${revision}
+
+
+
+ jar
+
+ han-note-user-relation-biz
+ ${project.artifactId}
+ 用户关系服务业务模块
+
+
+
+ com.hanserwei
+ hanserwei-common
+
+
+
+
+ com.hanserwei
+ hanserwei-spring-boot-starter-biz-operationlog
+
+
+
+
+ com.hanserwei
+ hanserwei-spring-boot-starter-biz-context
+
+
+
+
+ com.hanserwei
+ hanserwei-spring-boot-starter-jackson
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+
+ org.springframework.cloud
+ spring-cloud-starter-bootstrap
+
+
+
+
+ com.alibaba.cloud
+ spring-cloud-starter-alibaba-nacos-discovery
+
+
+
+
+ com.baomidou
+ mybatis-plus-spring-boot3-starter
+
+
+
+
+ com.mysql
+ mysql-connector-j
+
+
+
+
+ com.alibaba
+ druid-spring-boot-3-starter
+
+
+
+
+ org.apache.commons
+ commons-pool2
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-data-redis
+
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+
diff --git a/han-note-user-relation/han-note-user-relation-biz/src/main/java/com/hanserwei/hannote/user/relation/biz/config/RedisTemplateConfig.java b/han-note-user-relation/han-note-user-relation-biz/src/main/java/com/hanserwei/hannote/user/relation/biz/config/RedisTemplateConfig.java
new file mode 100644
index 0000000..6af3d21
--- /dev/null
+++ b/han-note-user-relation/han-note-user-relation-biz/src/main/java/com/hanserwei/hannote/user/relation/biz/config/RedisTemplateConfig.java
@@ -0,0 +1,31 @@
+package com.hanserwei.hannote.user.relation.biz.config;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.data.redis.connection.RedisConnectionFactory;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
+import org.springframework.data.redis.serializer.StringRedisSerializer;
+
+@Configuration
+public class RedisTemplateConfig {
+
+ @Bean
+ public RedisTemplate redisTemplate(RedisConnectionFactory connectionFactory) {
+ RedisTemplate redisTemplate = new RedisTemplate<>();
+ // 设置 RedisTemplate 的连接工厂
+ redisTemplate.setConnectionFactory(connectionFactory);
+
+ // 使用 StringRedisSerializer 来序列化和反序列化 redis 的 key 值,确保 key 是可读的字符串
+ redisTemplate.setKeySerializer(new StringRedisSerializer());
+ redisTemplate.setHashKeySerializer(new StringRedisSerializer());
+
+ // 使用 Jackson2JsonRedisSerializer 来序列化和反序列化 redis 的 value 值, 确保存储的是 JSON 格式
+ Jackson2JsonRedisSerializer