淘淘商城项目day01
准备重新开始写一遍此项目,发现有时候光看会有很多细节没有注意到,或者转眼就忘了,所以以后每天都把今天学的东西都写下来,记录每一天的成长!
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层
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相关推荐
- vue尚品汇商城项目-day00【项目介绍:此项目是基于vue2的前台电商项目和后台管理系统】
文章目录 本人其他相关文章链接 项目介绍:此项目是基于vue2的前台电商项目和后台管理系统 此项目为在线电商Web App (SPA) 包括首页, 搜索列表, 商品详情, 购物车, 订单, 支付, 用 ...
- 淘淘商城项目过程记录
一.为什么要做这个项目 想想距上次写一个完整的项目已经过了很长时间,因为一直在学习其他的知识,对SSM 知识已经有了生疏,于是就想通过这个商城项目把所有的知识都串一遍,不仅能够回复以前的知识,也可以学 ...
- 淘淘商城项目mysql服务器_SpringMVC+Spring+Mybatis+Mysql+Maven+Svn[ 淘淘商城项目环境搭建 ]...
背景:淘淘商城项目的环境搭建 说明:采用SpringMVC+Spring+Mybatis+Mysql+Maven+Svn结构搭建,在开发之中可以参考其结构和搭建步骤去搭建实际的工程项目 工程结构简图: ...
- 毕设ssm商城系统_ssm商城系统(爱淘淘购物)项目源码
ssm商城系统(爱淘淘购物)项目演示 本系统采用SSM架构来搭建. 服务器:tomcat7 java虚拟机:jdk1.7 数据库:mysql 前端:Vue + Bootstrap 管理员用户:root ...
- SSM分布式项目之淘淘商城-第一天(IDEA)
文章大纲 一.第一天课程计划 二.电商行业介绍 三.淘淘商城系统功能 四.系统架构 五.技术选型和开发环境 六.工程搭建 七.代码实现 八.参考文章 淘淘商城课程大纲 课程大纲 一共14天课程 (1) ...
- 淘淘商城项目报错 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 ...
- SSM项目之---淘淘商城(第一天)
大家关注公众号"计算机视觉这件小事"或者"AI-ming3526" 回复关键字"淘淘商城"免费获取源码资源 有需求也可以加博主vx:xiao ...
- 淘淘商城的第一天(传智播客2015年9月份项目)
主讲老师:入云龙 课程计划 一共14天课程 第一天:电商行业的背景.淘淘商城的介绍.搭建项目工程.Svn的使用. 第二天:框架的整合.后台管理商品列表的实现.分页插件. 第三天:后台管理.商品添加.商 ...
- 第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用
目录 1. 聊聊电商行业 1.1. 电商行业发展 1.2. 双十一 1.3. 电商行业技术特点 1.4 电商行业的模式 2. 淘淘商城 2.1. 淘淘商城简介 2.2. 功能架构 2.2.1. 系统功 ...
最新文章
- 目标检测---Segmentation Is All You Need
- 数字图像缩放之最近邻插值与双线性插值处理效果对比
- python 获取闭包函数的参数
- 【音频处理】Polyphone 样本编辑 和 样本工具 ( 波形图 | 信息 | 频率分析 | 均衡器 | 播放器 | 终点裁剪 | 自动循环节 | 空白移除 | 音量 平衡 音调 调整 )
- 微软亚洲研究院开源图数据库GraphView
- Split in Java
- 总结一哈JDK和Tomcat的环境变量配置
- 认证令牌_Java应用程序的简单令牌认证
- 颜宁:给实验室博士的一些忠告
- 教学思路SQL之入门习题《学员成绩》 三、多表复杂子查询
- Qt4_实现自定义委托
- 【李宏毅2020 ML/DL】P67-72 Anomaly Detection
- jquery的ajaxSetup()函数用法:设置全局的ajax默认选项
- 高分屏更改Adobe Premier CC UI界面字体大小
- [数值计算-2]:数值计算算法好坏的判断标准
- 浊度仪行业调研报告 - 市场现状分析与发展前景预测
- 我国的居民身份证号码,由由十七位数字本体码和一位数字校验码组成。请定义方法判断用户输入的身份证号码是否合法,并在主方法中调用方法测试结果。规则为:号码为18位,不能以数字0开头,前17位只可以是数字,
- 你的领英账号总被封?实战总结避免和解决领英帐号被封的最强攻略
- B06 - 999、大数据组件学习③ - Hive
- 如何使用docker和docker-compose在本地Testnet上开发EOS区块链