# eshopblvd
## 概述
电商项目
![](./docs/assets/80.png)
![](./docs/assets/81.png)
## 云服务器
添置一台阿里云ECS服务器(CentOS 7.9),安全组设置中添加常用端口:80(http), 22(ssh), 3306(mysql), 6379(redis)等,重置实例密码后重启服务器
通过ssh建立会话远程连接云服务器
```shell
$ ssh root@远程服务器公网ip地址
根据prompt输入实例密码
```
localhost免密码登陆远程云服务器
```shell
本地: 生成本地公钥和私钥,并通过scp指令将公钥安全拷贝到远程服务器.ssh目录下
$ ssh-keygen -t rsa
$ scp id_rsa.pub root@远程服务器公网ip地址:~/.ssh/id_rsa.pub
远程: 将公钥内容追加到~/.ssh/authorized_keys中
$ cd ~/.ssh && cat id_rsa.pub >> authorized_keys
这样下次ssh登陆服务器时就不用输入密码
```
ssh连接长时间不操作保持不断开
```shell
配置下服务器的/etc/ssh/sshd_config文件
Host *
# 断开时重试连接的次数
ServerAliveCountMax 600
# 每隔30秒自动发送一个空的请求以保持连接
ServerAliveInterval 10
重启一下ssh服务
$ systemctl restart sshd
```
```shell
查看可用内存
free -m
切换到root用户
su root
```
## Docker
### Docker上手
使用Docker虚拟化容器技术来隔离软件(mysql, redis, elasticsearch, rabbitmq等)的运行时环境
centos上安装docker并启动,可参考文档
[Install Docker Engine on CentOS | Docker Documentation](https://docs.docker.com/engine/install/centos/)
```shell
$ sudo yum install -y yum-utils
$ sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
$ sudo yum install docker-ce docker-ce-cli containerd.io
$ systemctl enable docker
$ systemctl start docker
```
docker相关指令
```shell
启动docker
$ systemctl start docker
检查docker镜像
$ docker images
docker开机自动启动
$ systemctl enable docker
查看正在运行的docker容器
$ docker ps
查看所有的docker容器
$ docker ps -a
重启某一docker容器
$ docker restart xxx
停止/删除某一docker容器/镜像
$ docker stop ${CONTAINER_ID}
$ docker rm ${CONTAINER_ID}
$ docker image rm
查看某一容器的日志,排查错误
docker logs ${容器名}
查看容器的cpu占用率、内存使用
docker stats
```
配置docker阿里云镜像加速
```bash
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://uizv1b1t.mirror.aliyuncs.com"]
}
EOF
systemctl daemon-reload
systemctl restart docker
```
### docker容器启动mysql
```shell
拉取镜像
$ docker pull mysql:5.7
启动mysql容器,3306:3306将容器3306端口映射到主机3306端口
-v表示容器内部目录挂载到centos的对应目录(日志、持久化数据、配置)
$ docker run -p 3306:3306 --name mysql \
-v /mount_data/mysql/log:/var/log/mysql \
-v /mount_data/mysql/data:/var/lib/mysql \
-v /mount_data/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7
进入mysql容器内部控制台
$ docker exec -it mysql /bin/bash
$ exit;
```
mysql配置修改
```shell
$ cd /mount_data/mysql/conf
$ vi my.cnf
插入下面的配置,设置编码方式
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
$ docker restart mysql
设置启动docker时,即运行mysql
$ docker update mysql --restart=always
```
### docker容器启动redis
拉取镜像、启动容器
```shell
$ docker pull redis
$ mkdir -p /mount_data/redis/conf
$ touch /mount_data/redis/conf/redis.conf
配置redis启用AOF持久化方式
$ echo "appendonly yes" >> /mydata/redis/conf/redis.conf
$ docker run -p 6379:6379 --name redis -v /mount_data/redis/data:/data \
-v /mount_data/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf
设置启动docker时,即运行redis
$ docker update redis --restart=always
```
进入redis容器的client命令行,这样就可以快乐地玩耍redis命令了
```shell
$ docker exec -it redis redis-cli
```
![](./docs/assets/42.png)
## 项目结构初始化
商品服务、用户服务、订单服务、优惠券服务、仓储服务、后台管理系统
最外层通过module来聚合所有微服务
每个微服务对应的数据库的建立
TODO:所有数据库表结构的解析
## 后台管理系统前端项目
前端系统Vue [GitHub - weilingao/eshopblvd-admin-vue: 电商网站后台管理系统](https://github.com/weilingao/eshopblvd-admin-vue)
https://cn.vuejs.org/
[Vue CLI](https://cli.vuejs.org/#getting-started)
依赖安装&脚手架初始化&启动
```shell
$ npm install -g @vue/cli
$ npm install vue
$ npm install webpack -g
$ npm install -g @vue/cli-init
$ vue init webpack eshopblvd-admin-vue
$ npm run dev[![@weilingao](https://avatars.githubusercontent.com/u/43017798?s=40&v=4)](https://github.com/weilingao)
```
vue脚手架初始化工程,结合vue-router,element-ui,完成基础的侧菜单和展示内容的路由
## 创建公共库eshopblvd-common
放置公共的依赖、bean、工具类,每个微服务都来依赖公共库
lombok依赖: @Data标注的实体类在编译期间自动加上getter、setter方法
#### Response 响应封装工具类
继承hashmap,key分别有code, msg, data
用来封装请求响应,功能包括快速构造500响应、200响应,响应内容的自定义
亮点:获取响应的时候可以通过泛型、fastjson的typereference来反序列化得到特定自定义类型的对象数据,使用TypeReference可以明确的指定[反序列化](https://so.csdn.net/so/search?q=%E5%8F%8D%E5%BA%8F%E5%88%97%E5%8C%96&spm=1001.2101.3001.7020)的类型
【面试】java泛型
[Java 泛型 | 菜鸟教程](https://www.runoob.com/java/java-generics.html)
【面试】Java泛型中T和问号(通配符)的区别
[Java泛型中T和问号(通配符)的区别_ikownyou的博客-CSDN博客_泛型通配符?和泛型t区别](https://blog.csdn.net/ikownyou/article/details/65630385)
【面试】java继承、重写override、重载overload
[Java 继承 | 菜鸟教程](https://www.runoob.com/java/java-inheritance.html)
[Java 重写(Override)与重载(Overload) | 菜鸟教程](https://www.runoob.com/java/java-override-overload.html)
## mybatis开发环境配置
TODO: 整合mybatis、page-helper实现分页功能[Mybatis 数据库物理分页插件 PageHelper - digdeep - 博客园](https://www.cnblogs.com/digdeep/p/4608933.html),分页工具类、查询,common库里所有的工具类
- 引入mybatis相关依赖:mybatis、数据库驱动
```xml
<!-- MyBatis-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.7</version>
</dependency>
<!--Mysql数据库驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.17</version>
</dependency>
<!-- https://mvnrepository.com/artifact/junit/junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
```
- mybatis - springboot整合
springboot作为ioc容器管理所有的组件,解决组件的动态依赖注入,控制事务
整合的目的是service业务逻辑层利用autowired自动装配dao层的组件来增删改查
官方docs:[GitHub - mybatis/spring-boot-starter: MyBatis integration with Spring Boot](https://github.com/mybatis/spring-boot-starter)
[SpringBoot整合MyBatis实战 | 包包的Tech Pool](https://www.baobao555.tech/posts/628531b3/)
引入springboot整合mybatis适配包(场景启动器)
```xml
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.2.2</version>
</dependency>
```
- 配�
没有合适的资源?快使用搜索试试~ 我知道了~
电商系统项目,基于SSM框架的电商网站.zip
共847个文件
java:422个
png:276个
xml:73个
需积分: 1 0 下载量 55 浏览量
2023-08-20
20:33:50
上传
评论
收藏 110.97MB ZIP 举报
温馨提示
dubbo系统源码,所有源码均经过严格测试,可直接运行,有需要的自取。
资源推荐
资源详情
资源评论
收起资源包目录
电商系统项目,基于SSM框架的电商网站.zip (847个子文件)
58 116KB
60 116KB
file.conf 3KB
file.conf 3KB
registry.conf 1KB
registry.conf 1KB
.git-credentials 1B
.gitconfig 0B
.gitignore 336B
login.html 450B
client1.html 234B
OrderExample.java 103KB
OrderReturnApplyExample.java 71KB
OrderItemExample.java 51KB
CouponExample.java 50KB
MemberExample.java 47KB
Order.java 42KB
MemberStatisticsInfoExample.java 41KB
SpuCommentExample.java 40KB
WareOrderTaskExample.java 39KB
PaymentInfoExample.java 32KB
MemberReceiveAddressExample.java 32KB
HomeAdvExample.java 32KB
SkuInfoExample.java 32KB
MemberLevelExample.java 30KB
OrderReturnApply.java 29KB
PurchaseExample.java 28KB
CouponHistoryExample.java 28KB
SpuInfoExample.java 27KB
AttrExample.java 27KB
CategoryExample.java 27KB
SeckillSkuRelationExample.java 25KB
HomeSubjectExample.java 24KB
UndoLogExample.java 24KB
OrderSettingExample.java 23KB
RefundInfoExample.java 23KB
ProductAttrValueExample.java 22KB
WareOrderTaskDetailExample.java 22KB
SeckillSkuNoticeExample.java 22KB
OrderServiceImpl.java 22KB
SeckillPromotionExample.java 22KB
PurchaseDetailExample.java 22KB
AttrGroupExample.java 21KB
MemberPriceExample.java 21KB
OrderOperateHistoryExample.java 20KB
BrandExample.java 20KB
OrderItem.java 20KB
SkuSaleAttrValueExample.java 20KB
IntegrationChangeHistoryExample.java 20KB
MemberCollectSpuExample.java 20KB
GrowthChangeHistoryExample.java 20KB
SpuImagesExample.java 20KB
MemberLoginLogExample.java 20KB
SeckillSessionExample.java 20KB
Coupon.java 20KB
WareSkuExample.java 20KB
SkuLadderExample.java 20KB
MemberCollectSubjectExample.java 19KB
CategoryBrandRelationExample.java 19KB
Member.java 18KB
SkuFullReductionExample.java 18KB
OrderReturnReasonExample.java 18KB
SkuImagesExample.java 18KB
HomeSubjectSpuExample.java 18KB
SpuBoundsExample.java 18KB
MemberStatisticsInfo.java 17KB
CouponSpuCategoryRelationExample.java 16KB
SpuComment.java 16KB
WareInfoExample.java 16KB
SpuInfoServiceImpl.java 16KB
CouponSpuRelationExample.java 16KB
AttrAttrgroupRelationExample.java 16KB
WareOrderTask.java 15KB
AttrServiceImpl.java 14KB
CommentReplayExample.java 14KB
MainSearchServiceImpl.java 13KB
CategoryServiceImpl.java 13KB
SeckillServiceImpl.java 12KB
MemberReceiveAddress.java 12KB
PaymentInfo.java 12KB
HomeAdv.java 12KB
MemberLevel.java 11KB
SkuInfo.java 11KB
CouponHistory.java 11KB
MemberRpcServiceImpl.java 10KB
HttpUtils.java 10KB
HttpUtils.java 10KB
Purchase.java 10KB
SpuInfoDescExample.java 10KB
SpuInfo.java 9KB
Attr.java 9KB
SeckillSkuRelation.java 9KB
SkuInfoServiceImpl.java 9KB
AuthServiceImpl.java 9KB
UndoLog.java 9KB
PurchaseServiceImpl.java 9KB
OrderSetting.java 8KB
CartServiceImpl.java 8KB
HomeSubject.java 8KB
WareOrderTaskDetail.java 8KB
共 847 条
- 1
- 2
- 3
- 4
- 5
- 6
- 9
资源评论
白话机器学习
- 粉丝: 8726
- 资源: 7682
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功