mybatis学习(三)Spring整合mybatis Setup篇

        截止到发表此篇博客为止,mybatis-spring 1.3.0版本出现,版本比较高也比较新,所以还是选择一个相对比较稳定的但是又不是太过久远的版本1.2.5。通过查阅官方文档使用1.3.0版本之后mybatis.xml配置文件中的<settings>配置项和集成到Spring配置文件中,不过似乎 <typeAliases>配置还需要在mybatis.xml文件中进行配置,1.2.5版本不具备上面的特性。

         下面的是快速整合的一种方式,但是这种方式在实际的开发过程中似乎用的不是很多,因为采用了注解的方式来进行映射,这样就失去了配置文件的灵活性,所以官方文档也不太建议使用,不过记录这样的方式也不是完全没有意义,是学习整合的第一例子,有助于深入的学习Sping和mybatis的整合。

          Spring配置文件中配置,由于是入门所以配置越简单越好,配置如下

 <!-- 配置mybatis SqlSessionFactory  -->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
  		<property name="dataSource" ref="dataSource" />
  		<!-- 1.3.0  mybatis-spring 开始支持下面的参数 -->
  		<!-- <property name="configuration">
		    <bean class="org.apache.ibatis.session.Configuration">
		      <property name="logImpl" value="LOG4J"/>
		      <property name="mapUnderscoreToCamelCase" value="true"/>
		    </bean>
  		</property> -->
	</bean>
	
	<!-- 配置 Mapper 映射  -->
	<bean id="musicMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
  		<property name="mapperInterface" value="org.lian.mapper.MusicMapper" />
		<property name="sqlSessionFactory" ref="sqlSessionFactory" />
	</bean>
	
	<bean id="musicService" class="org.lian.service.impl.MusicServiceImpl">
         <property name="musicMapper" ref="musicMapper"/>
    </bean>
	

       下面是配置Dao层的MapperInterface接口和Service层

public interface MusicMapper {

	/**
	 * 
	 * @description TODO
	 * @param id
	 * @return
	 * @return Music
	 */
	@Results(id = "musicResult", value = {
			@Result(property = "id", column = "id", id = true),
			@Result(property = "name", column = "name"),
			@Result(property = "singer", column = "singer"),
			@Result(property = "album", column = "album"),
			@Result(property = "duration", column = "duration"),
			@Result(property = "author", column = "author"),
			@Result(property = "composer", column = "composer"),
			@Result(property = "style", column = "style") })
	@Select("select * from t_music where id= #{id}")
	public Music getMusicById(@Param("id") String id);
	/**
	 * id; name; singer;
	 * 
	 * album; duration; author; composer;style
	 */
}

 

public class MusicServiceImpl implements MusicService {

	private MusicMapper musicMapper;

	public MusicMapper getMusicMapper() {
		return musicMapper;
	}

	public void setMusicMapper(MusicMapper musicMapper) {
		this.musicMapper = musicMapper;
	}

	@Override
	public String getMusicById(String id) {
		Music music = this.musicMapper.getMusicById(id);
		return GsonUtil.getInstance().convertToJson(music);
	}

}

  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值