• [项目] 淘淘商城 Part.1


    电商

    • 市场
      • 2013:79万笔/分钟
      • 2014:13.4万亿,双11支付宝交易峰值285万笔/分钟
      • 2015:50万亿
    • 技术特点
      • 一个Tomcat:500并发
      • 分布式:上万并发
      • 高并发、集群、负载均衡、高可用(冗余)
      • 海量数据
      • 业务复杂
      • 系统安全:记录日志
    • 架构
      • Lamp:linux apache mysql php
      • 小型机(ibm)+oracle+emc
      • 廉价设备+分布式+java+mysql+缓存

    项目概述

    • 技术选型
      • 数据库:mysql
      • Dao层:mybatis、数据库连接池(德鲁伊druid)
      • 缓存:redis
      • 搜索:solr
      • Service层:spring
      • 表现层:springmvc、jstl、EasyUI、jsp、freemaker
      • 图片服务器:FastDFS(分布式文件系统)
      • 反向代理服务器:nginx
      • 定时器:Quartz
      • Web服务器:Tomcat
      • 工程管理:maven
    • 分布式架构
      • 优点
        • 把模块拆分,使用接口通信,降低模块之间耦合度
        • 把项目拆分成若干子项目,不同团队负责不同子项目
        • 增加功能时只需增加一个子项目,调用其他系统的接口即可
        • 可灵活地进行分布式部署
      • 缺点
        • 系统间需要远程通信,接口开发增加工作量
    • 人员配置
      • 产品经理:3人,做什么(需求)
      • 项目经理:1人,怎么做
      • 前端:5人,静态页面
      • 后端:20人,实现功能
      • 测试:5人
      • 运维:3人,发布及维护

    后台搭建

    • 使用maven管理工程
      • 创建聚合工程,每个模块都是一个jar包,可被其他系统依赖
    • Taotao-parent
      • 打包方式为pom
      • pom文件中添加项目用到的所有jar包版本
    • Taotao-common
      • 打包方式为jar包
    • Taotao-manager
      • 打包方式为pom
    • taotao-manager-pojo
      • 打包方式为jar
    • taotao-manager-dao
      • 打包方式为jar
      • 依赖mybatis
    • taotao-manager-service
      • 打包方式为jar
      • 依赖Taotao-manager-dao
      • 依赖spring
    • taotao-manager-web
      • 打包方式为war
      • 依赖Taotao-manager-service
    • Tomcat插件
      • 在聚合工程中添加
      • 将Taotao-parent、Taotao-common安装到本地仓库

    svn使用

    • VisualSVN Server
    • 上传到svn,忽略setting文件夹,和.classpath,.project文件
    • 下载后需转换成maven项目,使用导入“存在的maven工程”导入Eclipse

    ssm框架整合

    • Dao层
      • 整合mybatis和spring
        • jar包
        1. mybatis的jar包
        2. Mysql数据库驱动
        3. 数据库连接池
        4. Mybatis和spring的整合包
        5. Spring的jar包
        • 配置文件
        1. mybatis的配置文件
        2. Spirng的配置文件
          • 数据库连接池
          • SqlSessionFactory
          • mapper文件扫描器
    • Service层
      • spring的jar包
        • 配置文件:applicationContext-service.xml
        • 配置包扫描器,扫描所有带@Service注解的类
      • 事务配置
        • 配置文件:applicationContext-trans.xml 
          1. 事务管理器
          2. 配置tx
          3. 配置切面 
    • 表现层
      • springmvc
      • 配置文件:springmvc.xml
        • 配置注解驱动
        • 配置视图解析器
        • 包扫描器,@Controller注解
      • Web.xml
        • Springmvc的前端控制器
        • Spring容器初始化的listener

    测试框架

    • 需求
      • 根据id查询商品信息,返回json数据
    • 实现  
      • DAO层:查询tb_item,根据商品id查询,可用逆向工程生成的代码
      • Service层:接收商品id,调用mapper查询商品信息,返回商品的pojo
      • Controller层:接收商品id,调用Service返回一个商品的pojo,直接响应pojo,需返回json,使用@ResponseBody
  • 相关阅读:
    ImageIO 操作图片
    ThreadLocal
    Mysql表字段命令alter add
    php中的for循环和js中的for循环
    获取当前URL地址和$_GET获取参数
    apache中的vhosts的配置。
    PHP获取前台传过来的时间年份,进行处理。
    php中的htmlspecialchars_decode()函数
    php分页类代码和使用
    cookies插件,记住cookies
  • 原文地址:https://www.cnblogs.com/cxc1357/p/12569255.html
Copyright © 2020-2023  润新知