SpringCloud微服务案例,API公共模块和部门VO

2025-05-25 01:19:34

1、在项目工程下新建一个mircoservicecloud-api的maven模块。&盟敢势袂lt;?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"> <modelVersion>4.0.0</modelVersion> <groupId>com.gwolf.springcloud</groupId> <artifactId>microservicecloud</artifactId> <version>1.0-SNAPSHOT</version> <modules> <module>microcloudservice-api</module> </modules> <packaging>pom</packaging> <name>microservicecloud</name> <url>http://www.example.com</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Dalston.SR1</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>1.5.9.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>6.0.6</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.5</version> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.1</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-core</artifactId> <version>1.2.3</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jetty</artifactId> <version>1.5.8.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>1.5.8.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <version>1.5.8.RELEASE</version> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>springloaded</artifactId> <version>1.2.8.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <version>1.5.8.RELEASE</version> </dependency> </dependencies> </dependencyManagement> <build> <pluginManagement> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <plugin> <artifactId>maven-clean-plugin</artifactId> <version>3.0.0</version> </plugin> <plugin> <artifactId>maven-resources-plugin</artifactId> <version>3.0.2</version> </plugin> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.7.0</version> </plugin> <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.20.1</version> </plugin> <plugin> <artifactId>maven-jar-plugin</artifactId> <version>3.0.2</version> </plugin> <plugin> <artifactId>maven-install-plugin</artifactId> <version>2.5.2</version> </plugin> <plugin> <artifactId>maven-deploy-plugin</artifactId> <version>2.8.2</version> </plugin> </plugins> </pluginManagement> </build></project>

SpringCloud微服务案例,API公共模块和部门VO

2、子模块创建完成之后,我们可以看到在父pom文件中包含了子模块的声明。<modules> <module>microcloudservice-api</module> </modules>

SpringCloud微服务案例,API公共模块和部门VO

3、新建一个部门微服务实体类:package com.gwolf.springcloud.entities;public class Dept implements java.io.Serializable{ //主键 private Integer deptno; //部门名称 private String dname; //来自哪个数据库,因为微服务架构可以一个服务对应一个数据库,同一个信息 //被存储到不同的数据库 private String db_source; public Integer getDeptno() { return deptno; } public void setDeptno(Integer deptno) { this.deptno = deptno; } public String getDname() { return dname; } public void setDname(String dname) { this.dname = dname; } public String getDb_source() { return db_source; } public void setDb_source(String db_source) { this.db_source = db_source; }}

SpringCloud微服务案例,API公共模块和部门VO

4、在微服务中,我们的实体类必须实现序列化的接口哦。不然对象流是不能通过网络传输的。

SpringCloud微服务案例,API公共模块和部门VO

5、现在我们实体类代码中自动生成了一系列的代码,如果我们新增和删除了一个属性,代码还需要重新生成,我们在项目中添加一个maven依赖包:<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.16.20</version> <scope>provided</scope> </dependency>

SpringCloud微服务案例,API公共模块和部门VO

6、我们在实体类上写上如下注解:package com.gwolf.springcloud.entities;import lombok.AllArgsConstructor;import lombok.Data;import lombok.NoArgsConstructor;import lombok.experimental.Accessors;@AllArgsConstructor@NoArgsConstructor@Data@Accessors(chain = true)public class Dept implements java.io.Serializable{ //主键 private Integer deptno; //部门名称 private String dname; //来自哪个数据库,因为微服务架构可以一个服务对应一个数据库,同一个信息 //被存储到不同的数据库 private String db_source;}

SpringCloud微服务案例,API公共模块和部门VO

7、这四个注解分别表示需要所有参数构造方法,无参构造方法,生成set方法和get方法,使用链式风格访问。

SpringCloud微服务案例,API公共模块和部门VO

8、这个公用的api子模块就定义完成了,其他模块需要用到部门实体的话,直接在maven中声明引入本模块即可。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢