淘淘商城项目day01

3 篇文章 0 订阅

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

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,终于成功了,要哭了~_~''

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


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值