Spring 集成iBATIS:
1. ORM 框架有两种
a. 一种完全依赖它生成SQL代码的框架,开发速度快, 但有时候生成的SQL代码不够高效(Hibernate)
b. 一种是手动编写SQL代码,确保查询到正确的字段来创建相应的JavaBean实例(iBaTIS)
2. Spring 集成iBATIS:
a. 在application.xml 文件种
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlClientFactoryBean">
<property name="configureLocation" value="sqlMapConfig.xml"/>
<property name="dataSource" ref local="dataSource"/>
</bean>
<bean id="customerDao" class="com.test.customerDAOSqlMapClient">
<property name="sqlMapClient" ref="sqlMapClient"/>
<bean/>
b. 创建sqlMapConfig.xml文件
.....头
<sqlMapConfig>
<sqlMap resource="Customer.xml"/>
</sqlMapConfig>
-----尾
c. 创建Customer.xml
<sqlMap>
<typeAlias type="com.test.Customer" alias="customer"/>
<resultMap class="customer" id="result">
<result property="id" column="id"/>
<result property="firstName" column="First_Name"/>
<result property="lastName" column="Last_Name"/>
</resultMap>
<select id="getCustomerById" resultMap="result" parameterClass="long">
select * from T_Customer where Id=#value#
</select>
//传递MAP 当你只是更新一个有大量例的表的几个字段,最好用MAP
<select id="getCustomerByLastNameAndLastLoginMap" resultMap="result" parameterClass="map">
select * from T_Customer where Last_Name like #lastName# and Last_Login =#lastLogin#
</select>
//传递对象 当你更新表中的大部分或全部例时,最好使用对象
<select id="getCustomerByLastNameAndLastLoginDO" resultMap="result" parameterClass="Customer">
select * from T_Customer where Last_Name like #lastName# and Last_Login =#lastLogin#
</select>
<update id="updateCustomerLastNameDO" parameterClass="Customer">
update T_Customer set Last_Name=#lastName# where Id=#Id#
</update>
insert
delete
</sqlMap>
3. Java 代码, 继承SqlMapClientDaoSupport
public class customerDao extends SqlMapClientDaoSupport{
public Customer getById(long Id){
return (Customer)this.getSqlMapClientTemplate().queryForObject("getCustomerById",Id);
}
public List<Customer> getByLastNameAndLastLoginMap(String lastName,Date lastLogin){
Map<String,Object> parms=new HashMap<String Object>();
parms.put("lastName",lastName);
parms.put("lastLogin",lastLogin);
return this.getSqlMapClientTemplate.queryForObject("getCustomerByLastNameAndLastLoginMap",parms);
}
public List<Customer> getByLastNameAndLastLoginDO(String lastName,Date lastLogin){
Customer customer=new Customer();
customer.setLastName(lastName);
customer.setLastLogin(lastLogin);
return this.getSqlMapClientTemplate.queryForObject("getCustomerByLastNameAndLastLoginDO",customer);
}
public void update(Long id,String lastName){
Customer customer=new Customer();
customer.setLastName(lastName);
customer.setId(id);
return this.getSqlMapClientTemplate.queryForObject("updateCustomerLastNameDO",customer);
}
}
分享到:
相关推荐
当我们将 Spring 与 iBatis 集成时,我们可以利用 Spring 的强大管理能力来控制 iBatis 的 SqlSession 和 SqlSessionFactory,从而实现更优雅的数据库操作。以下是一些关于 Spring 集成 iBatis 的关键知识点: 1. *...
**Spring集成iBatis详解** 在Java开发中,Spring框架以其强大的依赖注入和面向切面编程能力被广泛应用,而iBatis作为一个轻量级的持久层框架,它将SQL语句与Java代码分离,提供了更灵活的数据访问方式。将Spring与...
在本示例中,我们将探讨如何在Spring框架中集成iBATIS,并且将这个集成应用部署到WebSphere 5.1服务器上,并提供一个基于Web服务的接口。首先,我们需要理解Spring和iBATIS的基本概念。 Spring是一个开源的Java企业...
在Java Web开发中,Spring和iBatis是两个非常重要的框架。Spring是一个全面的后端开发框架,提供了依赖注入、AOP(面向切面编程)、事务管理等特性,而iBatis则是一个优秀的持久层框架,它将SQL语句与Java代码分离,...
### Spring与iBatis集成开发详解 #### 一、引言 在Java企业级应用开发领域,Spring框架因其强大的依赖注入(DI)和面向切面编程(AOP)能力而备受青睐;而iBatis(现称为MyBatis)则以其简洁的SQL映射功能而闻名。...
Spring整合iBatis是将流行的Java持久层框架iBatis与Spring框架集成,以实现更高效、更灵活的数据库操作。这种整合使得开发者可以利用Spring的依赖注入(DI)和管理事务的能力,同时享受iBatis提供的SQL映射功能。在...
Spring与iBATIS的集成 iBATIS似乎已远离众说纷纭的OR框架之列,通常人们对非常流行的Hibernate情有独钟。但正如Spring A Developer's Notebook作者Bruce Tate 和Justin Gehtland所说的那样,与其他的OR框架相比...
以上就是 Spring 与 iBATIS 整合集成的主要步骤和知识点。通过这样的集成,可以利用 Spring 的强大功能管理和协调整个应用程序,同时利用 iBATIS 的灵活性处理数据库操作,实现高效的企业级应用开发。在实际项目中,...
在IT行业中,Spring框架与iBatis的集成是常见的数据访问解决方案,特别是在Java Web开发中。这个集成将Spring的依赖注入特性和iBatis的SQL映射功能相结合,提供了高效且灵活的数据操作方式。让我们深入探讨一下这个...
在IT行业中,集成Spring、Struts和iBatis与MySQL是构建企业级Java Web应用程序的常见选择。这个项目集成了Spring 2.5.5、Struts 2.1.6、iBatis 2.3.4以及MySQL 5.1数据库,使用IntelliJ IDEA 9作为开发环境。下面将...
首先,集成Spring和iBATIS的关键在于配置。在Spring的配置文件(如`applicationContext.xml`)中,我们需要定义数据源、SQLMapClient以及SqlMapClientTemplate。数据源通常使用DataSource bean来创建,例如使用...
最近想在最新的Spring5.0中集成ibatis(不是mybatis),发现已经不在支持SqlmapClientTemplate和SqlmapClientFactoryBean,于是搞了这个工具jar来进行支持如下配置 <bean id="sqlMapClient" class="org.spring...
本教程将深入探讨如何将Spring、Ibatis框架与MySQL集群集成,以实现高效、可靠的数据库操作。 首先,让我们了解Spring和Ibatis。Spring是一个全面的Java应用开发框架,它提供了依赖注入、面向切面编程、事务管理等...
Ibatis与Spring框架集成后,可以使用Spring的DI功能管理数据库连接,同时通过MyBatis-Spring提供的MapperScannerConfigurer自动扫描并注册Mapper接口,实现DAO层的便捷开发。 在SpringMVC+Spring+Ibatis的架构中,...
Struts2.1.8、Spring2.5.6 和 iBatis2.3 的集成是Web开发中一种常见的技术组合,主要用于构建企业级的Java应用程序。这些框架各自都有其独特的优势,当它们协同工作时,可以提供强大的功能,如模型-视图-控制器(MVC...
Struts2+Spring+Hibernate和Struts2+Spring+Ibatis是两种常见的Java Web应用程序集成框架,它们分别基于ORM框架Hibernate和轻量级数据访问框架Ibatis。这两种框架结合Spring,旨在提供一个强大的、可扩展的、易于...
Struts2、Spring和iBatis是三种广泛应用于Java企业级开发的开源框架,它们各自在不同的领域提供了强大的功能,并且可以很好地集成在一起,形成一套完整的MVC(模型-视图-控制器)架构。 Struts2是基于MVC设计模式的...
Spring 3.0 和 iBatis 的集成是一个常见的企业级应用开发模式,它结合了Spring的强大依赖注入(DI)和面向切面编程(AOP)能力与iBatis灵活的SQL映射机制,实现了业务逻辑层与数据访问层的分离,提高了代码的可维护...