소스 검색

feat:搭建服务提供方集群,并注册到nacos注册中心

yang yi 1 년 전
부모
커밋
516333a2e7

+ 50 - 0
member-service-provider_10002/pom.xml

@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <parent>
+        <artifactId>distributedSystemLearn</artifactId>
+        <groupId>anyi.space</groupId>
+        <version>1.0-SNAPSHOT</version>
+    </parent>
+    <modelVersion>4.0.0</modelVersion>
+
+    <artifactId>member-service-provider_10002</artifactId>
+
+    <properties>
+        <maven.compiler.source>17</maven.compiler.source>
+        <maven.compiler.target>17</maven.compiler.target>
+    </properties>
+    <dependencies>
+        <!--引入nacos的服务发现依赖-->
+        <dependency>
+            <groupId>com.alibaba.cloud</groupId>
+            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-web</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.mysql</groupId>
+            <artifactId>mysql-connector-j</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>mybatis-plus-boot-starter</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.projectlombok</groupId>
+            <artifactId>lombok</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>druid-spring-boot-starter</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>anyi.space</groupId>
+            <artifactId>common</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+    </dependencies>
+</project>

+ 20 - 0
member-service-provider_10002/src/main/java/anyi/space/memberServer/MemberServiceApplication.java

@@ -0,0 +1,20 @@
+package anyi.space.memberServer;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
+
+/**
+ * @ProjectName: distributedSystemLearn
+ * @FileName: MerberServiceApplication
+ * @Author: 杨逸
+ * @Data:2025/4/13 18:53
+ * @Description:
+ */
+@EnableDiscoveryClient
+@SpringBootApplication(scanBasePackages = {"anyi.sapce.common","anyi.space.memberServer"})
+public class MemberServiceApplication {
+    public static void main(String[] args) {
+        SpringApplication.run(MemberServiceApplication.class,args);
+    }
+}

+ 36 - 0
member-service-provider_10002/src/main/java/anyi/space/memberServer/controller/MemberController.java

@@ -0,0 +1,36 @@
+package anyi.space.memberServer.controller;
+
+import anyi.sapce.common.entity.Member;
+import anyi.sapce.common.entity.ResponseResult;
+import anyi.space.memberServer.service.MemberService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.util.DigestUtils;
+import org.springframework.web.bind.annotation.*;
+
+import java.nio.charset.StandardCharsets;
+
+/**
+ * @ProjectName: distributedSystemLearn
+ * @FileName: MemberController
+ * @Author: 杨逸
+ * @Data:2025/4/13 18:55
+ * @Description:
+ */
+@RequiredArgsConstructor
+@RestController
+@RequestMapping("/member")
+public class MemberController {
+    private final MemberService memberService;
+    @GetMapping
+    public ResponseResult<Member> getMemberById(Integer id){
+        Member member = memberService.getById(id);
+        return ResponseResult.okResult(member);
+    }
+    @PostMapping
+    public ResponseResult addMember(@RequestBody Member member){
+        String hex = DigestUtils.md5DigestAsHex(member.getPwd().getBytes(StandardCharsets.UTF_8));
+        member.setPwd(hex);
+        boolean save = memberService.save(member);
+        return ResponseResult.okResult(save);
+    }
+}

+ 20 - 0
member-service-provider_10002/src/main/java/anyi/space/memberServer/mapper/MemberMapper.java

@@ -0,0 +1,20 @@
+package anyi.space.memberServer.mapper;
+
+import anyi.sapce.common.entity.Member;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+* @author 杨逸
+* @description 针对表【member】的数据库操作Mapper
+* @createDate 2025-04-13 18:44:39
+* @Entity anyi.space.merberServer.entity.Member
+*/
+@Mapper
+public interface MemberMapper extends BaseMapper<Member> {
+
+}
+
+
+
+

+ 13 - 0
member-service-provider_10002/src/main/java/anyi/space/memberServer/service/MemberService.java

@@ -0,0 +1,13 @@
+package anyi.space.memberServer.service;
+
+import anyi.sapce.common.entity.Member;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+* @author 杨逸
+* @description 针对表【member】的数据库操作Service
+* @createDate 2025-04-13 18:44:39
+*/
+public interface MemberService extends IService<Member> {
+
+}

+ 22 - 0
member-service-provider_10002/src/main/java/anyi/space/memberServer/service/impl/MemberServiceImpl.java

@@ -0,0 +1,22 @@
+package anyi.space.memberServer.service.impl;
+
+import anyi.sapce.common.entity.Member;
+import anyi.space.memberServer.mapper.MemberMapper;
+import anyi.space.memberServer.service.MemberService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+* @author 杨逸
+* @description 针对表【member】的数据库操作Service实现
+* @createDate 2025-04-13 18:44:39
+*/
+@Service
+public class MemberServiceImpl extends ServiceImpl<MemberMapper, Member>
+    implements MemberService{
+
+}
+
+
+
+

+ 21 - 0
member-service-provider_10002/src/main/resources/application.yaml

@@ -0,0 +1,21 @@
+server:
+  port: 10002
+  servlet:
+    context-path: /member-provider
+spring:
+  application:
+    name: member-service-provider
+  datasource:
+    type: com.alibaba.druid.pool.DruidDataSource
+    druid:
+      url: jdbc:mysql://localhost:3306/spring_cloud?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=UTC
+      username: root
+      password: hsp
+      driver-class-name: com.mysql.jdbc.Driver
+  cloud:
+    nacos:
+      discovery:
+        server-addr: localhost:8848
+mybatis-plus:
+  configuration:
+    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

+ 19 - 0
member-service-provider_10002/src/main/resources/mapper/MemberMapper.xml

@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="anyi.space.memberServer.mapper.MemberMapper">
+    <resultMap id="BaseResultMap" type="anyi.sapce.common.entity.Member">
+            <id property="id" column="id" jdbcType="BIGINT"/>
+            <result property="name" column="NAME" jdbcType="VARCHAR"/>
+            <result property="pwd" column="pwd" jdbcType="CHAR"/>
+            <result property="mobile" column="mobile" jdbcType="VARCHAR"/>
+            <result property="email" column="email" jdbcType="VARCHAR"/>
+            <result property="gender" column="gender" jdbcType="TINYINT"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        id,NAME,pwd,
+        mobile,email,gender
+    </sql>
+</mapper>

+ 1 - 0
pom.xml

@@ -11,6 +11,7 @@
         <module>member-service-provider_10000</module>
         <module>member-service-consumer</module>
         <module>common</module>
+        <module>member-service-provider_10002</module>
     </modules>
     <packaging>pom</packaging>