SSM使用配置以及整合

点击量:18

过滤器,spring mybatis springMVC

SSM整合

拦截器和过滤器


1.web工程都可以使用过滤器, 拦截器只有springMVC才能用

2.过滤器对所有web工程都能进行拦截,拦截器只拦截controller

实现步骤

1.创建一个拦截器类实现HandlerInterceptor

2.重写pre post after 三个方法

* pre 访问处理器之前执行
* post 访问处理器之后执行
* after 在响应视图完成后执行(还未开始渲染)

3.在springMVC配置文件中配置拦截器要拦截的controller

<mvc:interceptors>
<mvc:interceptor>
      //全部拦截
  <mvc:mapping path="/**" />
      //填写不拦截的
       <mvc:exclude-mapping path="/**/*.js" />
   </mvc:interceptor>
</mvc:interceptors>
作用

一般用于用户操作前判断用户是否登陆,登陆则放行,没登录则跳转到登录界面

拦截器链的执行顺序是先进后出


回顾SSM

1.确保Mybatis能单独使用

2.确保spring 能单独使用

3.确保springMVC能单独使用

4.spring 整合mybatis

5.spring 整合springMVC

START


确保mybatis能在web工程中单独使用
1.导入Mybatis 依赖

- mysql-connector
- mybatis
- log4j(可选)

2.导入实体类

3.编写到dao接口

4.提供dao映射文件

5.提供mybaits主配置文件

6.读取mybatis配置文件的流

7.创建SqlSessionFactoryBuilder

8.创建工程

9.创建sqlSession

10.测试使用

确保spring能在web工程中单独使用
1.导入spring 依赖

- spring-context
- spring-core
- spring-expression
- spring-beans
- spring-orm(事务)
- aspectweaver(解析切入点表达式)

2.编写service接口

3.编写service实现类(加注解)

4.编写spring配置文件
-开启组件扫描
 
5.测试
applicationContext 加载配置文件
确保springMVC能在web项目中能单独使用
1.导入相关依赖

- spring-webmvc
- jsp-api
- servlet-api
- jstl(用于使用<c:标签>)

2.编写web.xml

- 编写中文编码过滤器
- 编写前端控制器并加载springMVC文件 DispatcherServlet

3.编写springMVC主配置文件

- 组件扫描
- 开启mvc注解支持 anntation-driven
- 配置视图解析器 InternalResourceViewResolver
- 释放静态资源 default-servlet-handler

4.编写controller并添加注解 RequestMapping





整合

spring整合mybatis
1.导入相关依赖

- mybatis-spring (整合包)

2.将mybatis配置文件中的数据转移到spring配置文件

- 将数据库连接池进行转移 DataSource
- 将SqlSession工厂对象交给spring (SqlSessionFactoryBean),并传入连接池,也可以在参数里设置别名     `` 如果想使用mybatis主配置文件,可以通过configuration属性````创建完SqlSessionFactory,会自动创建代理对象,并放入IOC容器``
- 创建Mapper扫描对象(MapperScannerConfigurer)
- 可以删除mybatis的主配置文件

3.在service中注入dao并测试使用
spring整合springMVC
``web项目启动时只加载了springMVC配置文件因此容器中只有controller对象。所以需要在wev.xml配置监听器,因此会创建两个容器,容器中存放的对象不一样``

1.配置spring监听器

```xml
该监听器会自动加载名叫applicationContext且位置在WEB-INF下的文件
<listener>
<listener-class>ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
   <param-value>XXX.xml</param-value>
</context-param>


2.在controller中注入service对象


感谢您的阅读
文章由作者个人总结,欢迎指出文章错误



上一篇:Dubbo分布式框架相关配置

下一篇:COS腾讯云工具类