学习SSM有感001

 感觉对JavaWeb的基础有了大体的了解,开始接触SSM,说实话,刚开始 我还以为最火的框架是SSH,后来知道 是SSM,又以为是struts、Spring、MyBatis,现在才知道应该是:Spring、SpringMVC、MyBatis,正式开始学习框架了,有感觉好复杂,直接用Servlet、Service、Dao,难道不能解决问题嘛?不过既然流行必有其道理,只有学完之后才知道。 

Spring:    applicationContext.xml      LoggerAspect.java

IOC :   Spring------》TestApring.java-------》通过ClassPathSmlPathXmlApplicationContext读取applicationContext.xml拿到context,通过context的getBean方法获得一个对象。称为控制反转。

AOP:Spring------》TestApring.java-------》通过ClassPathSmlPathXmlApplicationContext读取applicationContext.xml拿到context,applicationContext中配置了切面LoggerAspect和切点pointCut,context调用业务方法时,触发切面方法执行。

 

SpringMVC: 

MyBatis的实现流程:

 

 

 

 

成型的SSM框架小项目:http://how2j.cn/k/ssm/ssm-tutorial/1137.html?tid=77#nowhere

  今天跟着流程实现了两次,还不是太明白,借此机会梳理下自己对整体的理解,帮助自己学习。

这个项目的流程:

步骤 1 : 数据库    
步骤 2 : 创建表    
步骤 3 : 准备数据    
步骤 4 : JDK版本    
步骤 5 : 先运行,再学习    
步骤 6 : 新建项目    
步骤 7 : 导入jar包    
步骤 8 : pojo    
步骤 9 : CategoryMapper    
步骤 10 : Category.xml    
步骤 11 : CategoryService    
步骤 12 : CategoryServiceImpl    
步骤 13 : CategoryController    
步骤 14 : web.xml    
步骤 15 : applicationContext.xml    
步骤 16 : springMVC.xml    
步骤 17 : listCategory.jsp    
步骤 18 : 部署在tomcat中,重启测试    
步骤 19 : 思路图    
步骤 20 : 删掉,从头开始,这次全部自己做    

第一部分:创建数据库,表,插入测试数据,新建项目,导包。

第二部分:pojo:也就是平时的bean类,

CategoryMapper :接口,有6个操作数据库的方法,涉及增删改查等。

Category.xml :配置文件,搭配CategoryMapper,实现数据库的操作。

以上两个文件,用来完成 数据库操作,也是底层操作,类似于Dao层。

CategorySevice:接口,有一个抽象方法,用来装载从数据库查询出的数据。

CategoryServiceImpl:类,实现了CategoryService接口,并重写了其方法,完成功能,调用了CategoryMapper中的方法。

以上两个文件用来接受servlet的调用,并调用Dao完成操作,类似于Service层。

 

CategoryController :控制器类,装配了categoryService,调用Service层的方法,完成数据库的操作。

 封装service返回的数据,通过@RequestMapping映射访问路径/listCategory路径到方法listCategory()。类似于Servlet层。

 

web.xml:通过ContextLoaderListener在应用启动时,获取contextConfigLocation配置文件的文件applicationContext.xml,初始化Spring。拦截访问,使用DispatcherServlet处理(使用SpringMVC)。

applicationContext.xml:1、注解将service的生命周期纳入Spring管理

                                        2、配置数据源

                                    3、扫描存放SQL语句的Category.xml

                                    4、 扫描Mapper,并将生命周期纳入Spring管理
applicationContext主要用于配置Spring,而操作多与Dao,service有关,所以我理解为   applicaitonContext用来配置service、Dao。

springMVC.xml:1、扫描Controller,并将其生命周期纳入spring管理

                            2、注解驱动,以使的访问路径与方法的匹配可以通过注解配置

                            3、静态页面,如html、css、js、可以访问

                            4、视图定位到/WEB-INF/jsp这个目录下

springMVC多涉及controller,视图,所以我以为 springMVC用来配置 servlet、jsp(view)。

listCategory.jsp:在这个jsp中,通过forEach标签,遍历CategoryController传递过来的集合数据,显示。

 

SSM的实现思路:

1. 首先浏览器上访问路径 /listCategory
2. tomcat根据web.xml上的配置信息,拦截到了/listCategory,并将其交由DispatcherServlet处理。
3. DispatcherServlet 根据springMVC的配置,将这次请求交由CategoryController类进行处理,所以需要进行这个类的实例化
4. 在实例化CategoryController的时候,注入CategoryServiceImpl。 (自动装配实现了CategoryService接口的的实例,只有CategoryServiceImpl实现了CategoryService接口,所以就会注入CategoryServiceImpl)
5. 在实例化CategoryServiceImpl的时候,又注入CategoryMapper
6. 根据ApplicationContext.xml中的配置信息,将CategoryMapper和Category.xml关联起来了。
7. 这样拿到了实例化好了的CategoryController,并调用listCategory方法
8. 在listCategory方法中,访问CategoryService,并获取数据,并把数据放在"cs"上,接着服务端跳转到listCategory.jsp去
9. 最后在listCategory.jsp 中显示数据

 

多数内容来自于:http://how2j.cn/k/ssm/ssm-tutorial/1137.html?tid=77#nowhere

2018-2-9 17:06

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值