访问【WRITE-bug数字空间]_[完整的源代码和文档]
注:本项目为开源项目,不能用于商业应用,仅供学习。
1.使用工具:
maven(建设工程),svn(版本控制工具),myeclipse(综合开发环境),nginx(反向代理),FastDFS(图片服务器),tomcat(web服务器),zookeeper(集群管理),mysql(数据库)Junit(测试)
2.技术栈:
spring,springmvc,mybatis(框架)solr(搜索服务),redis(缓存),easyUI(后台系统页)
3.数据库设计
tb_user用户表(id,username,password,phone,email,created,updated)tb_item商品表(id,title,sell_point,price,num,barcode,image,cid,status,created,updated)tb_cat商品分类表(id,parent_id,name,status,sort_order,is_parent,created,updated)tb_item_desc商品描述表(item_id,item_desc,created,updated)tb_item_param商品规格参数表(id,item_cat_id,param_data,created,updated)tb_item_param商品规格参数模板表(id,item_id,param_data,created,updated)tb_order订单表(payment,payment_type,post_fee,status,create_time,update_time,payment_time,consign_time,end_time,close_time,shipping_name,shipping_code,user_id,buyer_message,buyer_nick,buyer_rate)tb_order订单商品表(id,item_id,order_id,num,title,price,total_fee,pic_path)tb_order_shipping订单物流表(order_id,receiver_name,receiver_phone,receiver_mobile,receiver_state,receiver_city,receiver_district,receiver_address,receiver_zip,created,updated)tb_content_category商品目录分类表(id,parent_id,name,status,sort_order,is_parent,created,updated)tb_content商品目录表(id,category_id,title,sub_title,title_desc,url,pic,pic2,content,created,updated)
4.分布式系统4.1商品后台管理系统shopp-manager(后台管理)
商品添加功能:1.商品类别选择-easyui异步tree控件使用2.上传图片(fastdfs+nginx)3.富文本编辑器使用Kindeditor4.PageHelper插件用于分页,是基于mybatis的拦截接口实现的商品显示功能:1。PageHelper用于分页插件。2.使用easyUIDataGrid
4.2前台系统shopp前台系统-rest(发布服务)shop-search(搜索服务)
- 使用solr实现搜索,使用redis缓存内容列表,使用zookeper管理集群
SSO英文全称Single Sign On,单点登录。SSO在多个应用系统中, 用户只需登录一次即可访问所有相互信任的应用系统。它包括 同一用户的登录机制可以在其他应用程序中映射本次主要登录。 是目前流行的企业业务整合解决方案之一。
用户登录:1、接收用户名和密码2、验证用户名密码3、UUID44可用于生成token、将用户信息写入redis,key就是token5、将token写入cookie。6、返回登录成功需要将token返回客户端。Session共享问题:1、集群配置session复制tomcat。若集群中有许多节点,则会形成网络风暴。不超过5个推荐节点。2、分布式架构。分为多个子系统。(本项目使用)