基于Spring Cloud的电商系统设计与实现——用户与商品模块的研究(上)

06-01 1161阅读

操作系统:Windows

Java开发包:JDK1.8

项目管理工具:Maven3.6.0

项目开发工具:IntelliJIDEA

数据库:MySQL

Spring Cloud版本:Finchley.SR2

Spring Boot版本:2.0.6.RELEASE

目录

  • 用户模块—user-service
  • 商品模块—goods-service
  • 数据库设计
  • EurekaServer与公共工程的搭建
  • 搭建Eureka Server
    • 步骤1:创建项目,引入依赖
    • 步骤2:添加Eureka的相关配置
    • 步骤3:定义Security安全控制
    • 步骤4:在项目启动类添加注解
    • 步骤5:测试运行
  • 搭建公共工程
    • 步骤1:创建公共工程模块
    • 步骤2:创建与数据库中各张表对应的实体类
    • 步骤3:将Module项目打成jar包到Maven仓库
  • 用户模块实现
    • 步骤2:在全局配置文件application.yml中添加Eureka、MySQL以及MyBatis的相关配置
    • 步骤3:在项目启动类添加@EnableEurekaClient注解
  • 搭建user-consumer
    • 步骤1:创建项目,引入依赖
    • 步骤2:在全局配置文件application.yml中添加Eureka和Thymeleaf的相关配置信息
  • 用户登录功能
    • 步骤1:在工程user-provider中定义用户登录接口
    • 步骤2:在工程user-consumer中调用user-provider中的接口实现用户登录功能
    • 步骤3:启动测试登录功能
  • 用户注册功能
    • 步骤1:在工程user-provider中定义用户注册接口
    • 步骤2:在工程user-consumer中调用user-provider中的接口实现用户注册功能

此电商系统包含了用户与商品两个模块的部分功能,用户模块包括用户注册、用户登录;商品模块包括商品展示、商品详情、购物车以及订单。
基于Spring Cloud的电商系统设计与实现——用户与商品模块的研究(上)

开发项目之前,有必要根据项目业务进行分析,设计一套合理的架构。

本系统采用的是Spring Cloud微服务架构,根据业务功能将系统划分为5个服务,这5个服务构成了一套完整的微服务系统。其中,2个服务是基础服务,提供了一套服务治理的功能,它们分别是Eureka Server和网关服务;2个服务是资源服务,分别是用户服务和商品服务,对外暴露API接口,除此之外,还有一个common的工程,为资源服务提供基本的工具类。
基于Spring Cloud的电商系统设计与实现——用户与商品模块的研究(上)

浏览器访问服务端时,首先会经过网关,网关会根据请求路由到不同的服务,并且每个服务都会从不同的MySQL数据库获取数据。

用户模块—user-service

基于Spring Cloud的电商系统设计与实现——用户与商品模块的研究(上)

商品模块—goods-service

基于Spring Cloud的电商系统设计与实现——用户与商品模块的研究(上)

数据库设计

1.用户模块
基于Spring Cloud的电商系统设计与实现——用户与商品模块的研究(上)

/*创建数据库webuser*/
CREATE DATABASE webuser;

/*8.0以下版本MySQL执行以下SQL修改字符编码*/
alter database webuser character set utf8;
set names gbk;
/*使用数据库webuser*/
USE webuser;
/*创建表user*/
CREATE TABLE user (
  uaccount int(11) AUTO_INCREMENT PRIMARY KEY,
  upassword varchar(255) NOT NULL ,
  uname varchar(255) NOT NULL,
  usex varchar(50) 
) ;
/*向user表插入数据 */
insert  into user(uaccount,upassword,uname,usex) 
values 
(10018,'123','rose','女'),
(10019,'123','jake','男'),
(10020,'123','张三','男'),
(10021,'1','李四','男'),
(10022,'1','李明','男'),
(10023,'2','whhh','男'),
(10024,'1','王五','女'),
(10025,'1','hh','女');

2.商品模块
基于Spring Cloud的电商系统设计与实现——用户与商品模块的研究(上)

/*创建数据库webgoods*/
CREATE DATABASE webgoods;
/*8.0以下版本MySQL执行以下SQL修改字符编码*/
alter database webgoods character set utf8;
set names gbk;
/*使用数据库webgoods*/
USE webgoods;
/*创建数据表goods*/
CREATE TABLE goods (
  gid int(11)  AUTO_INCREMENT PRIMARY KEY,
  gname varchar(255) ,
  gdetails varchar(255) ,
  gprice int(11)
) ;
/*向goods表插入数据*/
insert  into goods(gid,gname,gdetails,gprice) 
values 
(1,'草莓','可口草莓',4),
(2,'苹果','红富士苹果',2),
(3,'橙子','金黄的大橙子',4),
(4,'葡萄','吐鲁番葡萄',12),
(5,'大虾','山东大虾',5),
(6,'带鱼','好吃的带鱼',50),
(7,'扇贝','大神快来快来',20),
(8,'皮皮虾','啥的客户',10),
(9,'脉动','不在状态,脉动一下',4),
(10,'汽水','栓双',8),
(11,'沙棘汁','好喝',3),
(12,'和其正','dsa asd',5),
(13,'菠菜','大',2),
(14,'生菜','asdajlskdja',2),
(15,'番茄','好吃',1),
(16,'胡萝卜','asdkjlajkld',2);

EurekaServer与公共工程的搭建

使用SpringInitializr方式创建一个项目web-store:

后面其他项目均在父工程中创建模块Moudle的方式创建,结构如下:
基于Spring Cloud的电商系统设计与实现——用户与商品模块的研究(上)

搭建Eureka Server

搭建eureka-server作为服务中心,是每个Spring Cloud微服务的心脏,所有服务将会注册到Eureka Server中。

步骤:

1.创建项目,引入依赖

2.添加Eureka相关配置

3.定义Security安全控制

4.添加@EnableEurekaServer注解

5.测试运行

步骤1:创建项目,引入依赖

在父工程web-store中创建Moudle,使用Spring Initializr方式创建一个名称为eureka-server的Spring Boot模块,将Artifact命名为eureka-server,在pom.xml文件中添加Eureka Server和Security依赖。

	org.springframework.cloud
	spring-cloud-starter-netflix-eureka-server


	org.springframework.cloud
	spring-cloud-starter-security
	 2.0.0
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们。

目录[+]

取消
微信二维码
微信二维码
支付宝二维码