尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

电商项目专题(三)-项目搭建

电商项目专题(三)-项目搭建
📅 发布时间:2026/7/28 17:54:23

1.搭建父工程

创建统一的父工程:yigou,用来管理依赖及其版本,注意是创建project,而不是moudle

填写坐标信息:

填写保存位置信息:

父工程不需要代码,只是管理依赖,因此我们不选择任何SpringCloud的依赖。

然后将pom文件修改成我这个样子:

<?xml version="1.0" encoding="UTF-8"?><projectxmlns="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.yigou.parent</groupId><artifactId>yigou</artifactId><version>1.0-SNAPSHOT</version><packaging>pom</packaging><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.1.4.RELEASE</version><relativePath/><!-- lookup parent from repository --></parent><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><java.version>1.8</java.version><spring-cloud.version>Greenwich.SR1</spring-cloud.version><mybatis.starter.version>1.3.2</mybatis.starter.version><mapper.starter.version>2.0.2</mapper.starter.version><druid.starter.version>1.1.9</druid.starter.version><mysql.version>5.1.32</mysql.version><pageHelper.starter.version>1.2.3</pageHelper.starter.version><fastDFS.client.version>1.26.1-RELEASE</fastDFS.client.version></properties><dependencyManagement><dependencies><!-- springCloud --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud.version}</version><type>pom</type><scope>import</scope></dependency><!-- mybatis启动器 --><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>${mybatis.starter.version}</version></dependency><!-- 通用Mapper启动器 --><dependency><groupId>tk.mybatis</groupId><artifactId>mapper-spring-boot-starter</artifactId><version>${mapper.starter.version}</version></dependency><!-- 分页助手启动器 --><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>${pageHelper.starter.version}</version></dependency><!-- mysql驱动 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql.version}</version></dependency><!--FastDFS客户端--><dependency><groupId>com.github.tobato</groupId><artifactId>fastdfs-client</artifactId><version>${fastDFS.client.version}</version></dependency></dependencies></dependencyManagement><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>

可以发现,我们在父工程中引入了SpringCloud等很多以后需要用到的依赖,以后创建的子工程就不需要自己引入了。

2.创建EurekaServer

2.1.创建工程

这个大家应该比较熟悉了。
我们的注册中心,起名为:yigou-registry
直接创建maven项目,自然会继承父类的依赖:
选择新建module:

选择maven安装,但是不要选择骨架:

然后填写项目坐标,我们的项目名称为yigou-registry:

选择安装目录,因为是聚合项目,目录应该是在父工程leyou的下面:

2.2.添加依赖

添加EurekaServer的依赖:

<?xml version="1.0" encoding="UTF-8"?><projectxmlns="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>yigou</artifactId><groupId>com.yigou.parent</groupId><version>1.0-SNAPSHOT</version></parent><modelVersion>4.0.0</modelVersion><artifactId>yigou-registry</artifactId><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</artifactId></dependency></dependencies></project>

2.3.编写启动类

/** * @author bruceliu * @create 2019-09-01 10:51 * @description */@SpringBootApplication@EnableEurekaServerpublicclassYigouRegistry{publicstaticvoidmain(String[]args){SpringApplication.run(YigouRegistry.class,args);}}

2.4.配置文件

server:port:10086spring:application:name:yigou-registryeureka:client:fetch-registry:falseregister-with-eureka:false#false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务service-url:defaultZone:http://127.0.0.1:${server.port}/eurekaserver:enable-self-preservation:false# 关闭自我保护eviction-interval-timer-in-ms:5000# 每隔5秒进行一次服务列表清理

2.5.项目的结构:

目前,整个项目的结构如图:

3.创建Zuul网关

3.1.创建工程

与上面类似,选择maven方式创建Module,然后填写项目名称,我们命名为:yigou-api-gateway

填写保存的目录:

3.2.添加依赖

这里我们需要添加Zuul和EurekaClient的依赖:

<?xml version="1.0" encoding="UTF-8"?><projectxmlns="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>yigou</artifactId><groupId>com.yigou.parent</groupId><version>1.0-SNAPSHOT</version></parent><modelVersion>4.0.0</modelVersion><artifactId>yigou-api-gateway</artifactId><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-zuul</artifactId></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-client</artifactId></dependency><!--是springboot提供的微服务检测接口,默认对外提供几个接口:/info--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency></dependencies></project>

3.3.编写启动类

/** * @author bruceliu * @create 2019-09-01 11:05 * @description */@SpringBootApplication@EnableDiscoveryClient@EnableZuulProxypublicclassYigouApiGateway{publicstaticvoidmain(String[]args){SpringApplication.run(YigouApiGateway.class,args);}}

3.4.配置文件

server:port:10010spring:application:name:api-gatewayeureka:client:service-url:defaultZone:http://127.0.0.1:10086/eurekaregistry-fetch-interval-seconds:5instance:prefer-ip-address:trueip-address:127.0.0.1instance-id:${spring.application.name}:${server.port}zuul:prefix:/api# 添加路由前缀retryable:trueribbon:ConnectTimeout:250# 连接超时时间(ms)ReadTimeout:2000# 通信超时时间(ms)OkToRetryOnAllOperations:true# 是否对所有操作重试MaxAutoRetriesNextServer:1# 同一服务不同实例的重试次数MaxAutoRetries:1# 同一实例的重试次数hystrix:command:default:execution:isolation:thread:timeoutInMillisecond:10000# 熔断超时时长:10000ms

3.5.项目结构

目前,yigou下有两个子模块:

yigou-registry:服务的注册中心(EurekaServer) yigou-api-gateway:服务网关(Zuul)

目前,服务的结构如图所示:

截止到这里,我们已经把基础服务搭建完毕,为了便于开发,统一配置中心(ConfigServer)我们留待以后添加。

相关新闻

  • 还在为无法保存微信视频号内容而烦恼吗?这个神器让你轻松捕获全网视频资源
  • 京城芬迪Peekaboo与法棍包回收价值PK:同门双雄,谁在二手市场更受欢迎? - 日常财经早知道
  • 3步掌握星露谷物语农场规划器:免费工具打造完美农场

最新新闻

  • 5分钟找回QQ空间全部历史说说的终极指南:GetQzonehistory使用教程
  • 送你一篇最实用的接口测试科普文章
  • Dan Koe内容创作方法论:如何打造引发深度共鸣的优质内容
  • 终极游戏音频提取指南:acbDecrypter从入门到精通
  • 34K Star 的 GraphRAG:微软开源的“知识图谱 + RAG“组合拳,让企业 AI 真正读懂你的私域文档
  • 将博客搬至CSDN

日新闻

  • 力旷智能:伺服驱动系统在制药收瓶设备中的应用解析
  • 2026 网安入门避坑指南,零基础如何避开无效学习直接上手实战
  • 揭秘CFC项目:如何通过手机摄像头实现850kbps无网络文件传输

周新闻

  • 大连理工大学与东京大学联手打造的“主动型AI助手“
  • 170.2026年国家级科研瓶颈:超精密单点金刚石切削(SPDT)光学表面生成
  • SongBloom:革命性歌曲生成框架深度解析——如何通过交织自回归与扩散模型创作完整音乐

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号