MybatisSpring config
package hello;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.SqlSessionTemplate;
import org.mybatis.spring.annotation.MapperScan;
import org.mybatis.spring.mapper.MapperFactoryBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import javax.sql.DataSource;
/**
 * Created by yuliji on 4/15/15.
 */
@Configuration
@MapperScan("hello")
public class MybatisConfig {
    @Bean
    @Autowired
    public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exception {
        SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
        sqlSessionFactoryBean.setDataSource(dataSource);
        return sqlSessionFactoryBean.getObject();
    }
    @Bean
    public MarginMapper mapperFactoryBean(SqlSessionFactory sqlSessionFactory) throws Exception {
        MapperFactoryBean<MarginMapper> mapperFactoryBean  = new MapperFactoryBean<MarginMapper>();
        mapperFactoryBean.setMapperInterface(MarginMapper.class);
        mapperFactoryBean.setSqlSessionFactory(sqlSessionFactory);
        return (MarginMapper)mapperFactoryBean.getObject();
    }
}