[quote]
[size=x-large][color=violet]【Spring+MAVEN+IBatis+MySQL】简单例子[/color][/size]
1. pom.xml中除了springframe配置(略),加入代码如下
2. 加入sql-map-config.xml IBatis Config配置文件
3. 配置spring的bean
4. sec5-sql.xml 代码
5. PersonIbatisDAO.java
6. JUnit Test:PersonIbatisTest.java
[/quote]
[size=x-large][color=violet]【Spring+MAVEN+IBatis+MySQL】简单例子[/color][/size]
1. pom.xml中除了springframe配置(略),加入代码如下
<dependency>
<groupId>org.apache.ibatis</groupId>
<artifactId>ibatis-sqlmap</artifactId>
<version>2.3.4.726</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.30</version>
</dependency>
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>cglib</groupId>
<artifactId>cglib</artifactId>
<version>3.1</version>
</dependency>
2. 加入sql-map-config.xml IBatis Config配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd" >
<sqlMapConfig>
<settings useStatementNamespaces="true"/>
<sqlMap resource="section5/sec5-sql.xml"/>
</sqlMapConfig>
3. 配置spring的bean
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost/test" />
<property name="username" value="root" />
<property name="password" value="1111" />
<property name="initialSize" value="5" />
<property name="maxActive" value="10" />
</bean>
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name="configLocation" value="sql-map-config.xml" />
</bean>
<bean id="sqlMapClientTemplate" class="org.springframework.orm.ibatis.SqlMapClientTemplate">
<property name="dataSource" ref="dataSource" />
<property name="sqlMapClient" ref="sqlMapClient"/>
</bean>
<bean id="personIbatisDAO" class="com.lh.springtest.section5.PersonIbatisDAO">
<property name="sqlMapClientTemplate" ref="sqlMapClientTemplate"/>
</bean>
4. sec5-sql.xml 代码
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMap
PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-2.dtd" >
<sqlMap namespace="sec5">
<typeAlias alias="hmap" type="java.util.HashMap"/>
<select id="getPersons" resultClass="hmap">
select * from person
</select>
</sqlMap>
5. PersonIbatisDAO.java
public class PersonIbatisDAO implements BaseDAO{
private List<Map<String, Object>> resultList = null;
private Map<String, Object> prepareMap = null;
private SqlMapClientTemplate sqlMapClientTemplate;
public void setSqlMapClientTemplate(SqlMapClientTemplate sqlMapClientTemplate) {
this.sqlMapClientTemplate = sqlMapClientTemplate;
}
@Override
public List<Map<String, Object>> searchPersons() {
List<Map<String, Object>> resultList = sqlMapClientTemplate.queryForList("sec5.getPersons", prepareMap);
return resultList;
}
}
6. JUnit Test:PersonIbatisTest.java
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations={"classpath:section5/sec5.xml"})
public class PersonIbatisTest {
@Autowired
@Qualifier("personIbatisDAO")
private PersonIbatisDAO personIbatisDAO;
List<Map<String, Object>> resultList = null;
Map<String, Object> resultmap = null;
@Test
public void searchPersonsTest() {
resultList = personIbatisDAO.searchPersons();
System.out.println("searchPersonsTest=>"+resultList);
}
}
[/quote]