Spring+iBatis整合(业务层聚合SqlMapClientTemplate)


PS:

用的是业务层聚合SqlMapClientTemplate的方法,

步骤八中持有一个spring<bean>出来的SqlMapClientTemplate对象



Spring和Ibatis框架整合的思路与spring和hibernate框架的整合思路基本一致。

步骤一:新建立一个项目。
步骤二:为该项目添加spring的应用环境。
步骤三:导入Ibatis的必须JAR包以及数据库JAR包。
步骤四:新建实体Bean。如下:

package cn.test.entity;
import java.io.Serializable;
/**
* @author Administrator
*
*学生实体Bean
*
*/
public class Student implements Serializable {
/**/
private static final long serialVersionUID = 1L;
private Integer id;
private String studentname;
private Integer studentage;
private String studentaddress;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getStudentname() {
return studentname;
}
public void setStudentname(String studentname) {
this.studentname = studentname;
}
public Integer getStudentage() {
return studentage;
}
public void setStudentage(Integer studentage) {
this.studentage = studentage;
}
public String getStudentaddress() {
return studentaddress;
}
public void setStudentaddress(String studentaddress) {
this.studentaddress = studentaddress;
}
}



步骤五:新建相应的Bean的配置文件。如下:Student.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap
PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-2.dtd">
<sqlMap>
<!-- 查询操作 -->
<select id="getAllStudent" resultClass="cn.test.entity.Student">
select * from student where 1=1
</select>
<!-- 通过编号获取信息 -->
<select id="getStudentById" resultClass="cn.test.entity.Student" parameterClass="Integer">
select * from student where id=#ids#
</select>
</sqlMap>



步骤六:新建Ibatis的应用配置文件。sql-map-config.xml

<?xml version="1.0″ encoding="UTF-8″?>
<!DOCTYPE sqlMapConfig
PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<!--通知spring到哪里去寻找配置文件-->
<sqlMap resource="cn/test/configfile/Student.xml"/>
</sqlMapConfig>



步骤七:修改spring的applicationContext.xml文件。添加如下代码:

<!-- 配置数据源 -->
<bean id="dataSource">
<property name="driverClassName">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://localhost:3306/test</value>
</property>
<property name="username">
<value>root</value>
</property>
<property name="password">
<value>root</value>
</property>
</bean>
<!-- spring的ibatis 配制 -->
<bean id="sqlMapClient">
<property name="dataSource">
<ref bean="dataSource"/>
</property>
<property name="configLocation">
<value>cn/test/configfile/sql-map-config.xml</value>
</property>
</bean>
<!-- 配置模板 -->
<bean id="sqlMapClientTemplate">
<property name="sqlMapClient">
<ref bean="sqlMapClient"/>
</property>
</bean>



步骤八:书写数据持久层次以及业务层代码。数据持久层代码如下:

public class StudentDAOImple implements IStudentDAO{
private SqlMapClientTemplate sqlMapClientTemplate;
public void setSqlMapClientTemplate(SqlMapClientTemplate sqlMapClientTemplate) {
this.sqlMapClientTemplate = sqlMapClientTemplate;
}
public List<Student> getAllStudent() {
List<Student> list = sqlMapClientTemplate.queryForList(“getAllStudent”);
return list;
}
}

以及修改修改spring的applicationContext.xml文件

<!-- DAO -->
<bean id="studentDAO">
<property name="sqlMapClientTemplate">
<ref bean="sqlMapClientTemplate"/>
</property>
</bean>



步骤九:建立测试类及测试方法

public class Test {
/**
* @param args
*/
public static void main(String[] args) {
ApplicationContext factory = new ClassPathXmlApplicationContext("applicationContext.xml");
IStudentDAO dao = (IStudentDAO) factory.getBean("studentDAO");
List<Student> list = dao.getAllStudent();
for (int i = 0; i < list.size(); i++) {
Student stu = list.get(i);
System.out.println(stu.getId()+":"+stu.getStudentname()+":"+stu.getStudentage()+":"+stu.getStudentaddress());
}
}
}




通过以上的配置,相信对SSI的配置也应该易如反掌了吧!







  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值