yuliji
4/15/2015 - 12:42 PM

MybatisSpring config

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();
    }

}