实现步骤:
1、新建maven
2、加入maven依赖
- spring的依赖
- mybatis依赖
- mysql的驱动
- spring的事务的依赖
- mybatis和spring的集成的依赖:mybatis官方的,用来在spring项目中创建mybatis的sqlsessionfactory,dao对象的
3、创建实体类
4、创建dao接口和mapper文件
注意:一个dao接口对应一个数据库的表
5、创建mybatis的主配置文件
<!--设置别名,不是必须的-->
<typeAliases>
<!--name:实体类所在的包名
-->
<package name="实体类所在的包名"/>
</typeAliases>
<!-- sql mapper(sql映射文件)的位置-->
<mappers>
<!--
这个是必须的
name:是包名, 这个包中的所有mapper.xml一次都能加载
-->
<package name="dao所在的包名"/>
</mappers>
6、 声明mybatis的对象交给spring创建
- 数据源DataSource
- Dao接口
<!--声明数据源Datasource,作用是连接数据库的-->
<bean id="myDataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init"
destroy-method="close">
<!--set注入,给duriddatasource提供数据库的信息-->
<!--
使用属性配置文件的数据,语法${}
-->
<property name="url" value=""/><!--seturl-->
<property name="username" value=""/>
<property name="password" value=""/>
<property name="maxActive" value=""/>
</bean>
一般而言,我们对于属性的配置放在一个.properties文件中
在spring的主配置文件中需要声明这个.properties文件的位置
<context:property-placeholder location="classpath:文件名.properties" />
<!---这个文件名的根目录是resource->
<!--
使用属性配置文件的数据,语法${}
-->
- SqlSessionFactory
<!--声明的是mybatis中提供的sqlsessionfactorybean类,这个类内部创建sqlsessionfactory-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<!--set注入,把数据库的连接池赋给了datasource属性-->
<property name="dataSource" ref="myDataSource"/>
<!--mybatis主配置文件的位置
configLocation属性是Resource类型,读取配置文件
他的赋值使用value,指定文件的路径,使用classpath:表示文件的位置-->
<property name="configLocation" value="classpath:mybatis.xml"/>
</bean>
<!--创建dao对象,使用sqlsession的getmapper,
mapperscannerconfigurer:在内部调用getmapper,生成每个dao接口的代理对象-->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
<!--指定包名,包名是dao接口所在的包名
MapperScannerConfiguer:会扫描这个包中的所有类,
把每个接口都执行一次getMapper()方法,得到每个接口的dao对象。
创建好的dao对象放入到spring的容器中
-->
<property name="basePackage" value="dao包名所在路径"/>
</bean>
- 声明自定义的service