一、后台管理的spu
1.1、一些知识点的回顾
-
什么是spu和sku?
spu(标准的商品单元) standard product unit
Sku(库存存储单元,单位件、台、部、盒) stock keep unit -
它们之间的关系是什么?
范围上来说Spu包含sku
Spu表和sku表是一对多的关系 -
什么是平台属性,平台属性功能涉及的表由那两张
两张:pms_base_attr_info(平台属性表) pms_base_attr_value(平台属性值表) -
平台属性和商品分类、商品之间是什么关系
1.2、平台属性的修改操作
1 根据平台属性id判断,有id是修改操作,没有id是添加操作
2 修改操作
A 先修改平台属性
// 属性修改
Example example = new Example(PmsBaseAttrInfo.class);
example.createCriteria().andEqualTo("id",pmsBaseAttrInfo.getId());
pmsBaseAttrInfoMapper.updateByExampleSelective(pmsBaseAttrInfo,example);
B 修改平台属性值
// 属性值修改
// 按照属性id删除所有属性值
PmsBaseAttrValue pmsBaseAttrValueDel = new PmsBaseAttrValue();
pmsBaseAttrValueDel.setAttrId(pmsBaseAttrInfo.getId());
pmsBaseAttrValueMapper.delete(pmsBaseAttrValueDel);
// 删除后,将新的属性值插入
List<PmsBaseAttrValue> attrValueList = pmsBaseAttrInfo.getAttrValueList();
for (PmsBaseAttrValue pmsBaseAttrValue : attrValueList) {
pmsBaseAttrValueMapper.insertSelective(pmsBaseAttrValue);
}
3 进入修改页面,调用http://127.0.0.1:8081/getAttrValueList?attrId=43
实现getAttrValueList的方法,为修改页面查询一个平台属性值的集合
二、分布式文件存储(FastDFS)
2.1、安装FastDFS
##### 2.1.0 安装依赖软件和类库(安装前的准备)
yum install gcc-c++ -y
yum -y install zlib zlib-devel pcre pcre-devel gcc gcc-c++ openssl openssl-devel libevent libevent-devel perl unzip net-tools wget
yum -y install libevent
yum install perl*
##### 2.1.1 fdfs的依赖库
Libfastcommon
A解压
b./make.sh
c./make.sh install
d用cp /usr/lib64/libfastcommon.so /usr/lib/将类库拷贝到/usr/lib下
2.1.2 fastdfs软件(tracker、storage)
配置tracker
配置storage
(依赖于:Gcc、libevent、perl)
A新建目录mkdir /opt/fastdfs
B解压FastDFS_v5.05.tar.gz到/usr/local
C进入解压目录cd FastDFS
D./make.sh
E./make.sh install
F进入conf配置目录将文件都拷贝到/etc/fdfs下cp * /etc/fdfs/(安装时自动生成)
G进入/etc/fdfs/,配置tracker.conf
vim /etc/fdfs/tracker.conf ,设置软件数据和日志目录
H storage的配置(storage不需要安装,因为安装tracker时已经同时安装)
vim /etc/fdfs/storage.conf
软件目录
Storage存储文件的目录(新建mkdir /opt/fastdfs/fdfs_storage)
Storage的trackerip
2.1.3 配置tracker和storage的启动服务
进入/etc/init.d启动脚本目录,默认fastdfs已经生成
Vi fdfs_trackerd脚本文件
mkdir /usr/local/fdfs(因为启动脚本还在安装目录下,所以我们新建/usr/local/fdfs目录,并且将启动脚本cp到该目录)
进入安装目录/opt/FastDFs
cp restart.sh /usr/local/fdfs/
cp stop.sh /usr/local/fdfs/
配置storage启动服务(restart和stop脚本已经拷贝到/usr/local/fdfs下,所以storage只需要配置/etc/init.d/fdfs_storage脚本就可以了)
将启动脚本加入linux服务
启动服务
2.1.4 测试上传 (FastDFS-nginx-module)
Fdfs整合nginx的插件
A 解压FastDFS-nginx-module插件
B 修改插件读取fdfs的目录(插件自己的配置文件)
Vi fastdfs-nginx-module/src/config
C 将FastDFS-nginx-module插件整合fdfs的配置文件拷贝到fdfs的配置目录下(整合fdfs的配置文件)
FastDFS-nginx-module/src下的mod_fastdfs.conf拷贝至/etc/fdfs/下(这里面是两个路径)
软件安装目录
Tracker_server地址
Web的url是否包含group的路径名
上传文件存储目录
2.1.5 nginx
做web服务器,提供http请求服务
(依赖于:pcre-devel、zlib-devel)
/configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--add-module=/opt/fastdfs-nginx-module/src
修改nginx配置文件
Vi /nginx/conf/nginx.conf
别忘了创建临时的目录/var/temp/nginx/client
2.1.6 fdfs的集群