Mybaties和Spring框架的整合(spring配置文件生成接口实现类的方法)
准备工作
准备:jdbc.properties 要测试的接口 接口的映射文件
<!--接口-->
public interface BookMapper {
//根据编号查询书本信息
public Book queryById(int id);
第一步:整合数据库资源
<context:property-placeholder location="classpath:jdbc.properties"/>
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
<property name="driverClassName" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</bean>
第二步:整合mybaties
<bean id="sessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<!--设置连接池-->
<property name="dataSource" ref="dataSource"/>
<!--关联mybaties配置文件-->
<property name="configLocation" value="classpath:mybatis-config.xml"/>
<!--给domain包下的javabean起别名-->
<!--<property name="typeAliases" value="it.heima"/>-->
</bean>
第三步:生成bookmapper接口的实现类
<bean id="bookMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
<!--生成接口实现类,需要sqlsessioinFactory-->
<property name="sqlSessionFactory" ref="sessionFactory"/>
<!--通过反射new出接口的实现类-->
<property name="mapperInterface" value="it.heima.mapper.BookMapper"/>
</bean>
第四步:测试
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "classpath:beans.xml")
public class BookMapperTest {
@Value("#{bookMapper}")
private BookMapper bookMapper;
@Test
public void test(){
Book book = bookMapper.queryById(1);
System.out.println(book);
}