spring是一款开源轻量级的开发框架,其目的是用于简化企业级应用程序开发,降低侵入性。
其实spring本质是管理软件中的对象,即创建对象和维护对象之间的关系;
MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架,MyBatis几乎封装了所有JDBC代码和参数的设置以及结果集检索。
MyBatis使用简单的XML或注解做配置和定义映射关系,将Java的POJOs映射成数据库中的记录;
step1 导包如下:
step 2 配置ApplicationContext.xml文件:
<!-- 配置组件扫描 -->
<context:component-scan
base-package="cn.tedu.store.mapper" />
<!-- 加载数据库连接池的配置文件 -->
<util:properties id="dbConfig"
location="classpath:db.properties" />
<!-- 配置Bean用于数据库连接池 -->
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="url"
value="#{dbConfig.url}" />
<property name="driverClassName"
value="#{dbConfig.driver}" />
<property name="username"
value="#{dbConfig.user}" />
<property name="password"
value="#{dbConfig.password}" />
<property name="initialSize"
value="#{dbConfig.initSize}" />
<property name="maxActive"
value="#{dbConfig.maxActive}" />
</bean>
<!-- 配置MapperScannerConfigurer -->
<bean
class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<!-- 用于配置持久层接口在哪里 -->
<property name="basePackage"
value="cn.tedu.store.mapper" />
</bean>
<!-- 配置SqlSessionFactoryBean -->
<bean
class="org.mybatis.spring.SqlSessionFactoryBean">
<!-- 用于配置数据库连接池 -->
<property name="dataSource"
ref="dataSource" />
<!-- 用于配置持久层映射文件在哪里 -->
<property name="mapperLocations"
value="classpath:mappers/*.xml" />
</bean>
<!-- 配置事务 -->
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource"
ref="dataSource" />
</bean>
<!-- 注解驱动-->
<tx:annotation-driven
transaction-manager="transactionManager" />
另外需要注意的是,如果不添加组件扫描,也可通过MapperScannerConfigurer的AnnotationClass属性注入一个自定义的注解,并加在该接口上即可。