准备重新开始写一遍此项目,发现有时候光看会有很多细节没有注意到,或者转眼就忘了,所以以后每天都把今天学的东西都写下来,记录每一天的成长!

1.淘淘商城的技术选型

数据库:mysql

Dao层:mybatis,数据库连接池:druid

Service层:spring

表现层:springmvc,jstl(jsp标签库),easyUI(后台框架),jsp(前端),freemarker(还不知道干嘛用的)

缓存:redis

搜索:solr

图片服务器:FastDFS(分布式文件系统)

反向代理服务器:nginx

web服务器:tomcat

定时任务管理:Quartz

工程管理:maven

技术选型基本上告诉了我们要做哪些功能,可以用来提示自己.

2.后台管理系统的搭建

网站一般分前台和后台,前台给用户看,后台管理人员使用;两者之间的关系并不是很紧密,所以我们可以分成两个web工程来做.

我们使用maven来管理工程,mavn主要做两件事:1.管理依赖jar包 2.构建项目

maven创建工程的注意事项:

1.创建一个聚合工程:每个模块都是一个jar包,这些jar包可以被其他系统依赖(很有必要,这样前后台可以共用这些模块)

2.工程结构:

taotao-parent(管理jar包版本,为公司级别的父工程,保证所有项目的jar包版本一致)    打包方式:pom(父工程为聚合工程,必须采用此方式)

------taotao-common(把通用工具类打包,这样所有工程都能用)    打包方式:jar,继承父工程

------taotao-manager(聚合工程,下面的模块都会在其pom下添加依赖)   打包方式:pom(聚合工程),继承父工程,依赖common

------taotao-manager-pojo       模块类型:maven module 打包方式:jar 不用依赖

------taotao-manager-dao(放逆向工程生成的mapper和接口)    模块类型同上 打包方式:jar 依赖pojo

------taotao-manager-service   模块类型同上 打包方式:jar 依赖dao

------taotao-manager-web  模~同上 打包方式:war(一个聚合工程里至少有一个war包,把其他的jar包都整合进去),依赖service(还有别的,它依赖的最多)

3.配置各个项目的pom.xml

4.在taotao-manager-web的src-main-webapp下新建WEB-INF文件夹,在里面新建web.xml(必须由,否则报错)

5.在taotao-manager的pom.xml添加tomcat插件(运行的是聚合工程,所以在聚合工程下配置)

6.运行tomcat需使用tomcat7.run命令

7.测试一下上述配置是否成功,在webapp下新建index.jsp文件,内容随意(注意不是放在WEB-INF下,WEB-INF下的文件客户端无法读取)

浏览器输入http://localhost:8080/ ,显示index.jsp内容,到这里后台管理系统就基本搭建起来啦!

3.使用SVN管理项目

因为真实项目开发中,都是团队作战,大家各自分工负责部分代码,所以需要用到项目管理软件,来将大家每天写的代码汇总和更新

具体流程:

1.由项目经理建立好仓库,可以用visualSVNServer来管理(这里由我们自己来建)

2.我们作为项目组新人,第一件事就是从仓库将项目代码下载到本地,这个过程叫checkout

3.下载下来的项目不是maven项目,需要通过maven的选项-->enable dependency managerment转成maven工程

4.聚合文件(taotao-manager)下载下来发现不是想要的结构,右键taotao-manager-import-maven-existing maven project

-next,勾选add projects to working set,然后finish就好了

5.我们每天的工作就是在本地更新代码,等到下班前需要将今天代码commit,不过在提交前需要先与资源库同步,以免与他人提交的代码起冲突

4.搭建SSM框架环境

jar包之前都用maven导好了,所以只需要配置好配置文件,这些配置文件应该放哪呢?不管哪层的配置文件,都应该放在taotao-manager-web下,因为聚合工程下的模块都会被打成jar包扔进war包中
1.整合dao层(即整合mybatis和spring)

需要的jar包

1.mybatis的jar包

2.Mysql的数据库驱动

3.数据库连接池

4.mybatis和spring的整合包

5.spring的jar包

配置文件

1.mybatis的sqlMapConfig

2.Spring的applicationContext-dao.xml

----数据源

----数据源配置文件扫描器(context:property-placeholder)

----数据库连接池

----配置sqlsessionfactorybean(mybatis和spring整合包中的) (property需要数据源,sqlmapconfig配置文件)

----配置mapperScannerConfigurer

2.整合Service层
需要的jar包
1.spring的jar包
配置文件

1.applicationContext-service.xml

----配置包扫描器(context:component-scan),扫描所有带@service注解的类

2.application-trans.xml

----配置一个datasourcetransactionmanager(property需要数据源)

----配置tx

----配置切面

3.整合表现层

需要的jar包

1.springmvc的jar包

2.spring的jar包

配置文件

1.springmvc.xml

----配置HandlerMapping

----配置HandlerAdapter(这两个合并用mvc:annotation-driven来代替)

----配置viewResolver(property需要prefix,suffix)

----包扫描器,扫描@controller注解

2.web.xml

----spring容器初始化(context-param)

----配置contextLoaderListener

----配置CharacterEncodingFilter

4.通过逆向工程生成pojo和mapper

导入项目,修改配置文件就好了.

5.测试搭建好的项目

假设有一个需求:通过商品id,查到商品信息

1.dao层

查询tb_item表,根据商品id查询,可以使用逆向工程生成的代码

2.service层

接收商品id,调用mapper查询商品信息,返回商品的pojo.

参数:Long itemId

返回值:TbItem

3.controller层

接收一个商品id,调用service,返回一个商品的pojo,直接把pojo响应给客户,需要返回一个json数据,需要用到@ResponseBody注解

url:/item/{itemId},响应一个tbItem

4.解决mapper映射文件不拷贝的问题

默认只复制resource下的映射文件,所以需要修改taotao-manager-dao工程的pom文件,将我们实际放mapper的地址加进来

正常这里就应该能运行起来了,浏览器访问时带上商品id就能展示商品信息,可是碰到以下错误

org.springframework.beans.factory.BeanCreationException

按网上说的看是不是配置文件错了,或者没加注解,找了一圈都是对的,这时候看到这个帖子https://www.cnblogs.com/hyhnet/p/5548769.html,里面提到了mapper.xml文件的命名空间问题,才想起来,我是在其他项目中用逆向工程生成的mapper,所以命名空间可能是不对的,而且这个还不会报错;点开看果然,命名空间不对,重新改正了过来,可是发现还是有错

又继续上网查,看到一个帖子写web.xml里的配置文件路径需要重新设置,于是回过头看视频,发现视频里的applicationContext-dao.xml是放在spring中的,我是放在mybatis下的,所以按他的配置web.xml就会扫不到applicationContext-dao.xml;于是把这个文件移到web.xml,终于成功了,要哭了~_~''

到这里,今天的搭建工作就完成了,复习一下吧~!

淘淘商城项目day01相关推荐

  1. vue尚品汇商城项目-day00【项目介绍:此项目是基于vue2的前台电商项目和后台管理系统】

    文章目录 本人其他相关文章链接 项目介绍:此项目是基于vue2的前台电商项目和后台管理系统 此项目为在线电商Web App (SPA) 包括首页, 搜索列表, 商品详情, 购物车, 订单, 支付, 用 ...

  2. 淘淘商城项目过程记录

    一.为什么要做这个项目 想想距上次写一个完整的项目已经过了很长时间,因为一直在学习其他的知识,对SSM 知识已经有了生疏,于是就想通过这个商城项目把所有的知识都串一遍,不仅能够回复以前的知识,也可以学 ...

  3. 淘淘商城项目mysql服务器_SpringMVC+Spring+Mybatis+Mysql+Maven+Svn[ 淘淘商城项目环境搭建 ]...

    背景:淘淘商城项目的环境搭建 说明:采用SpringMVC+Spring+Mybatis+Mysql+Maven+Svn结构搭建,在开发之中可以参考其结构和搭建步骤去搭建实际的工程项目 工程结构简图: ...

  4. 毕设ssm商城系统_ssm商城系统(爱淘淘购物)项目源码

    ssm商城系统(爱淘淘购物)项目演示 本系统采用SSM架构来搭建. 服务器:tomcat7 java虚拟机:jdk1.7 数据库:mysql 前端:Vue + Bootstrap 管理员用户:root ...

  5. SSM分布式项目之淘淘商城-第一天(IDEA)

    文章大纲 一.第一天课程计划 二.电商行业介绍 三.淘淘商城系统功能 四.系统架构 五.技术选型和开发环境 六.工程搭建 七.代码实现 八.参考文章 淘淘商城课程大纲 课程大纲 一共14天课程 (1) ...

  6. 淘淘商城项目报错 Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.2:compile (default-

    @[TOC](淘淘商城项目报错 Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.2:compile (d ...

  7. SSM项目之---淘淘商城(第一天)

    大家关注公众号"计算机视觉这件小事"或者"AI-ming3526" 回复关键字"淘淘商城"免费获取源码资源 有需求也可以加博主vx:xiao ...

  8. 淘淘商城的第一天(传智播客2015年9月份项目)

    主讲老师:入云龙 课程计划 一共14天课程 第一天:电商行业的背景.淘淘商城的介绍.搭建项目工程.Svn的使用. 第二天:框架的整合.后台管理商品列表的实现.分页插件. 第三天:后台管理.商品添加.商 ...

  9. 第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

    目录 1. 聊聊电商行业 1.1. 电商行业发展 1.2. 双十一 1.3. 电商行业技术特点 1.4 电商行业的模式 2. 淘淘商城 2.1. 淘淘商城简介 2.2. 功能架构 2.2.1. 系统功 ...

最新文章

  1. 目标检测---Segmentation Is All You Need
  2. 数字图像缩放之最近邻插值与双线性插值处理效果对比
  3. python 获取闭包函数的参数
  4. 【音频处理】Polyphone 样本编辑 和 样本工具 ( 波形图 | 信息 | 频率分析 | 均衡器 | 播放器 | 终点裁剪 | 自动循环节 | 空白移除 | 音量 平衡 音调 调整 )
  5. 微软亚洲研究院开源图数据库GraphView
  6. Split in Java
  7. 总结一哈JDK和Tomcat的环境变量配置
  8. 认证令牌_Java应用程序的简单令牌认证
  9. 颜宁:给实验室博士的一些忠告
  10. 教学思路SQL之入门习题《学员成绩》 三、多表复杂子查询
  11. Qt4_实现自定义委托
  12. 【李宏毅2020 ML/DL】P67-72 Anomaly Detection
  13. jquery的ajaxSetup()函数用法:设置全局的ajax默认选项
  14. 高分屏更改Adobe Premier CC UI界面字体大小
  15. [数值计算-2]:数值计算算法好坏的判断标准
  16. 浊度仪行业调研报告 - 市场现状分析与发展前景预测
  17. 我国的居民身份证号码,由由十七位数字本体码和一位数字校验码组成。请定义方法判断用户输入的身份证号码是否合法,并在主方法中调用方法测试结果。规则为:号码为18位,不能以数字0开头,前17位只可以是数字,
  18. 你的领英账号总被封?实战总结避免和解决领英帐号被封的最强攻略
  19. B06 - 999、大数据组件学习③ - Hive
  20. 如何使用docker和docker-compose在本地Testnet上开发EOS区块链

热门文章

  1. 历次改革学习-20220816
  2. 亚马逊(AWS) 创建EC2 - Windows
  3. Conda简介及常用指令
  4. vue forEach和map的区别
  5. 微多普勒效应学习【1】
  6. Linux下vi与vim命令使用与区别
  7. 2021第十一届中国轻工业信息化大会专访—滴普科技
  8. RGB565转RGB888原理 (MATLAB代码)
  9. 倍加福NJ50-FP-N-P1电感式传感器
  10. 业内首部《云网络发展白皮书》正式发布, 云交换成为多云互联标配