发现有人已经为Spring3增加了这一部分的功能,

iBatis3已经发布了,

但是Spring3却没有相应的ORM包,

在网上查了一下,

发现有人已经为Spring3增加了这一部分的功能,

使iBatis3可以在通过Spring3来管理和使用,

下载此Jar包 ,并将其放到你的classpath中,

之后在Spring的配置文件中,进行如下配置:
01 <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
02 <property name="locations">
03 <list>
04 <value>
05 classpath:conf/spring/jdbc.properties
06 </value>
07 </list>
08 </property>
09 </bean>
10
11 <!-- 数据源 -->
12 <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
13 <property name="driverClassName" value="${database.driver}">
14 <property name="url" value="${database.url}">
15 <property name="username" value="${database.username}">
16 <property name="password" value="${database.password}">
17 </property></property></property></property></bean>
18
19 <bean id="sqlSessionFactory" class="org.springframework.orm.ibatis3.SqlSessionFactoryBean">
20 <property name="configLocation" value="classpath:conf/ibatis/ibatis-config.xml">
21 <property name="dataSource" ref="dataSource">
22 </property></property></bean>

其中,jdbc.properties是数据库的配置文件:
1 database.driver=com.mysql.jdbc.Driver
2 database.password=123456
3 database.url=jdbc\:mysql\://localhost/oem
4 database.username=puras

配置好DataSource之后,接下来则需要配置iBatis的相关文件了,
首先是ibatis-config.xml:
1 <!--?xml version="1.0" encoding="UTF-8" ?-->
2
3 <configuration>
4 <mappers>
5 <mapper resource="conf/ibatis/user_mapper.xml">
6 </mapper></mappers>
7 </configuration>

这里添加了一个Mapper,下面是User_mapper.xml的内容:
1 <!--?xml version="1.0" encoding="UTF-8" ?-->
2
3 <mapper namespace="org.mooko.yushu.persistence.mapper.UserMapper">
4 </mapper>

这里没有像iBatis2中那么多的配置,
只有一个mapper,
而namespace则是必须要写的,

下面再来看看UserMapper,你会发现,与iBatis2的区别:
01 /*******************************************************************************
02 * @(#)UserMapper.java 2010-4-28
03 *
04 * Copyright 2010 Neusoft Group Ltd. All rights reserved.
05 * Neusoft PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
06 *******************************************************************************/
07 package org.mooko.yushu.persistence.mapper;
08
09 import java.util.List;
10
11 import org.apache.ibatis.annotations.Select;
12 import org.mooko.yushu.domain.user.User;
13
14 /**
15 * @author <a href="mailto:hegq@neusoft.com">Puras.He</a>
16 * @version $Revision 1.1 $ 2010-4-28 下午03:49:28
17 */
18 public interface UserMapper {
19 @Select("select id, email, passwd, created_at as createdAt, updated_at as updatedAt from user where email=#{email} and passwd=#{passwd}")
20 User getUser(User user);
21
22 @Select("select * from user")
23 List<user> getUsers();
24 }
25 </user>

看到了么?以前在XML中的SQL语句,全部在Java中通过注解的方式来实现了

现在需要做的,就是在Spring中声明这个Mapper了,
1 <bean id="userMapper" class="org.springframework.orm.ibatis3.support.MapperFactoryBean">
2 <property name="sqlSessionFactory" ref="sqlSessionFactory">
3 <property name="mapperInterface" value="org.mooko.yushu.persistence.mapper.UserMapper">
4 </property></property></bean>

再将这个Mapper注入到Service中:
1 <bean id="sayService" class="org.mooko.yushu.service.impl.SayServiceImpl">
2 <property name="userMapper" ref="userMapper">
3 </property></bean>

这样,你就可以在Service中使用这个Mapper了。

PS:厌烦了XML的配置,
现在换成注解的方式来写SQL,
是不是有种不一样的感觉呢?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值