- 一、创建WEB项目,导入相关的依赖包
依赖包分为下面几类:
spring3.2.0
所有包
(
包括
springmvc
的包
mybatis
及依赖包
mybatis
和
spring
整合包
junit
包
log4j包
- 二、在web.xml配置spring的核心监听器org.springframework.web.context.ContextLoaderListener,只有配置了spring的核心监听器,spring框架才可以使用.
<!-- 加载spring容器 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/applicationContext-*.xml</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
- 三、创建spring的配置文件。
首先创建
spring整合mybatis配置文件(applicationContext-dao.xml,
在这个配置文件中配置:
*配置属性文件加载(db.properties)
*配置数据源(dataSource)
*配置sqlSessionFactoryBean
注入:数据源
注入:mybatis的全局配置文件
详细的配置请参考下面的配置:
xmlns:xsi
=
"
http://www.w3.org/2001/XMLSchema-instance"
;
xmlns:mvc
=
"
http://www.springframework.org/schema/mvc"
;
xmlns:aop
=
"
http://www.springframework.org/schema/aop"
;
xmlns:tx
=
"
http://www.springframework.org/schema/tx"
;
<!-- 加载配置文件 -->
<
context:property-placeholder
location
=
"classpath:db.properties"
/>
<!--配置数据源dataSource-->
<!-- 数据库连接池 -->
<
bean
id
=
"dataSource"
class
=
"org.apache.commons.dbcp.BasicDataSource"
>
<
property
name
=
"driverClassName"
value
=
"${jdbc.driverClassName}"
></
property
>
<
property
name
=
"url"
value
=
"${jdbc.url}"
></
property
>
<
property
name
=
"username"
value
=
"root"
></
property
>
<
property
name
=
"password"
value
=
"123"
></
property
>
</
bean
>
<!--配置sqlSessionFactory -->
<
bean
id
=
"sqlSessioFactory"
class
=
"org.mybatis.spring.SqlSessionFactoryBean"
>
<!--
注入数据源
-->
<
property
name
=
"dataSource"
ref
=
"dataSource"
></
property
>
<!--
注入
mybatis
的全局配置文件
-->
<
property
name
=
"configLocation"
value
=
"classpath:mybatis/SqlMapConfig.xml"
></
property
>
</
bean
>
<!-- 配置扫描器 -->
<
bean
class
=
"org.mybatis.spring.mapper.MapperScannerConfigurer"
>
<!-- 注入扫描包 -->
<
property
name
=
"basePackage"
value
=
"cn.itcast.ssm.mapper"
></
property
>
<!-- 注入sqlSessionFactoryBeanName-->
<
property
name
=
"sqlSessionFactoryBeanName"
value
=
"sqlSessioFactory"
></
property
>
</
bean
>
</
beans
>
- 四. 在第三步中需要一个mybatis的全局的配置文件,我们就直接创建一个配置文件,一般的名字为SqlMapConfig.xml(主要功能settings,typeAliases),整合之后里面不需要写任何东 西,如果需要使用别名需要配置TypeAliases.
- 五. 创建 spring整合service配置文件(applicationContext-servcie.xml)
*配置Service bean
*配置事务
xmlns:xsi
=
"
http://www.w3.org/2001/XMLSchema-instance"
;
xmlns:mvc
=
"
http://www.springframework.org/schema/mvc"
;
xmlns:aop
=
"
http://www.springframework.org/schema/aop"
;
xmlns:tx
=
"
http://www.springframework.org/schema/tx"
;
<!-- 声明是事务管理 -->
<
!-- 事务管理器-->
<
bean
id
=
"transactionManager"
class
=
"org.springframework.jdbc.datasource.DataSourceTransactionManager"
>
<
property
name
=
"dataSource"
ref
=
"dataSource"
></
property
>
</
bean
>
<!-- 包扫描 -->
<
context:component-scan
base-package
=
"cn.itcast.ssm.service"
>
</
context:component-scan
>
<!-- 通知 -->
<
tx:annotation-driven
transaction-manager
=
"transactionManager"
/>
</
beans
>
- 六、在web.xml配置springmvc的前端控制器,这个前端控制器在初始化的时候,加载springmvc的配置文件。
<!--
springmvc
的前端控制器 -->
<
servlet
>
<
servlet-name
>
springmvc
</
servlet-name
>
<
servlet-class
>
org.springframework.web.servlet.DispatcherServlet
</
servlet-class
>
<!-- 加载
springmvc
的
xml
配置文件
-->
<
init-param
>
<
param-name
>
contextConfigLocation
</
param-name
>
<
param-value
>
classpath:spring/springmvc.xml
</
param-value
>
</
init-param
>
</
servlet
>
<
servlet-mapping
>
<
servlet-name
>
springmvc
</
servlet-name
>
<!-
*.action或*.do等等,只要以.action或.do等结尾 的
地址 springmvc就可以接收这个请求
-->
<
url-pattern
>
*.action
</
url-pattern
>
</
servlet-mapping
>
- 七. 创建springmvc的配置文件,一般叫springmvc.xml
在这个配置文件中配置三大器(处理器映射器,
处理器适配器,视图解析器
)
<!-- 注解处理器映射器 -->
<!-- <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/> -->
<!-- 注解处理器适配器 -->
<!-- <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/> -->
<!-- 配置处理器的映射器 和适配器-->
<!-- 如果使用<mvc:annotation-driven />不用单独配置json转换器。 -->
<
mvc:annotation-driven
conversion-service
=
"conversionService"
></
mvc:annotation-driven
>
开发中常用
<!-- 视图解析器 -->
<
bean
class
=
"org.springframework.web.servlet.view.InternalResourceViewResolver"
>
<
property
name
=
"viewClass"
value
=
"org.springframework.web.servlet.view.JstlView"
></
property
>
<
property
name
=
"prefix"
value
=
"/WEB-INF/jsp/"
/>
前缀
<
property
name
=
"suffix"
value
=
".jsp"
></
property
>
后缀
</
bean
>
注意:在controller中返回的逻辑视图名称必须在WEB-INF/jsp下面,并且必须是.jsp结尾