下面是整个过程举的一些例子,里面需要的部分可以粘贴出来用:
sqlMapConfig.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>
<sqlMap resource="com/itmg/crawler/server/dao/masterdb/config/Area.xml"/>
</sqlMapConfig>
Area.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 namespace="Area">
<typeAlias alias="area" type="com.itmg.crawler.server.remote.model.dao.AreaModel"/>
<select id="getAllArea" resultClass="area">
<![CDATA[
select
*
from t_area
]]>
</select>
<select id="getAllAreaByID" parameterClass="area" resultClass="area">
select * from t_area where id=#id#
</select>
</sqlMap>
Area.java
package com.itmg.crawler.server.dao.masterdb.impl;
import java.util.ArrayList;
import java.util.List;
import com.itmg.crawler.server.dao.masterdb.AreaDAO;
import com.itmg.crawler.server.exception.DAOException;
import com.itmg.crawler.server.remote.model.dao.AreaModel;
public class AreaDAOImpl extends BaseDAO implements AreaDAO {
public AreaDAOImpl() {
// TODO Auto-generated constructor stub
}
/*
* 获得t_area表的数据
* @see com.itmg.crawler.server.dao.masterdb.AreaDAO#getAllArea()
*/
public List<AreaModel> getAllArea() throws Exception {
List<AreaModel> list = new ArrayList<AreaModel>();
list = getSqlMapClientTemplate().queryForList("getAllArea");
return list;
}
/*
* 通过AreaModel里的id获得list
* @see com.itmg.crawler.server.dao.masterdb.AreaDAO#getAreaBySimple(com.itmg.crawler.server.remote.model.dao.AreaModel)
*/
public List<AreaModel> getAreaBySimple(AreaModel areaModel)
throws Exception {
List<AreaModel> list = new ArrayList<AreaModel>();
list = getSqlMapClientTemplate().queryForList("getAllAreaByID",areaModel);
return list;
}
}
BaseDAO
package com.itmg.crawler.server.dao.masterdb.impl;
import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport;
public class BaseDAO extends SqlMapClientDaoSupport{
public BaseDAO() {
// TODO Auto-generated constructor stub
}
}
spring部分:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="dataSource_master" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<property name="driverClass" value="com.mysql.jdbc.Driver" />
<property name="jdbcUrl" value="jdbc:mysql://127.0.0.1/masterdb_server" />
<property name="user" value="root" />
<property name="password" value="xuehaipeng" />
<property name="maxPoolSize" value="20" />
<property name="minPoolSize" value="5" />
<property name="initialPoolSize" value="5" />
<property name="maxIdleTime" value="20" />
</bean>
<bean id="transactionManager_master" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource"><ref local="dataSource_master"/></property>
</bean>
<bean id="sqlMapClient_master" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="dataSource" ref="dataSource_master" />
<property name="configLocation">
<value>classpath:/com/itmg/crawler/server/dao/masterdb/config/sqlMapConfigMaster.xml</value>
</property>
</bean>
<!-- MasterDB DAO configure -->
<bean id="daoTemplateMaster" abstract="true">
<property name="sqlMapClient" ref="sqlMapClient_master"/>
</bean>
<bean id="areaDAO" class="com.itmg.crawler.server.dao.masterdb.impl.AreaDAOImpl" parent="daoTemplateMaster"/>
</beans>
分享到:
相关推荐
总之,这个项目展示了如何结合Spring MVC、Ibatis以及Spring注解,构建一个完整的Web应用程序,实现了数据的CRUD操作,以及分页排序查询和用户登录验证等功能,所有这些都基于非XML的配置方式,利用注解提高了开发...
- **扩展性**:结合Spring的AOP(面向切面编程),可以方便地实现缓存、审计等功能。 通过以上步骤,我们可以将iBATIS和Spring高效地集成在一起,构建出强大的企业级应用。在实际项目中,还可能需要结合其他框架,...
它与Spring3的结合,可以利用Spring的DataSource和TransactionManager,实现数据库连接的管理和事务的控制。 在“S2S3Ibatis”项目中,我们可以看到以下关键步骤的整合: 1. 配置Struts2:在struts.xml中定义...
文章首先回顾了之前的Struts结合Spring并使用Spring的JdbcTemplate来搭建工程框架的经历,然后介绍了使用Maven来管理jar库的方法。接着,文章详细讲述了如何使用iBatis3结合Spring来构建SSI框架,包括建立工程、增加...
Spring作为一款全面的企业级应用框架,提供了依赖注入、事务管理等功能,与IBatis结合可以构建出稳定且易于维护的系统。 首先,整合IBatis与Spring的关键步骤是配置。在Spring的配置文件中,我们需要定义数据源、...
Spring 3.2 与 iBatis 的整合是Java企业级开发中常见的一种技术组合,它结合了Spring的依赖注入和事务管理能力以及iBatis的SQL映射框架的灵活性。这种整合允许开发者将业务逻辑与数据访问层解耦,提高了代码的可维护...
标题 "ibatis与spring整合实例(附源码)" 暗示了本文将探讨如何在实际项目中结合使用这两个流行的Java开发框架——iBatis和Spring。iBatis是一个SQL映射框架,它允许开发者将SQL语句直接写在配置文件中,而Spring则...
总结,MyBatis、iBatis与Spring的整合是Java企业级开发中的常见实践,它们的结合使用能够提供灵活的数据库访问策略,同时利用Spring的优秀特性如DI和AOP,提高代码的可维护性和可扩展性。通过XML或注解配置,可以...
6. 将iBatis与Spring整合:使用SqlSessionFactoryBean,配置数据源和MapperScannerConfigurer,让Spring管理SqlSession和Mapper接口。 在描述中提到的"log4j"是Apache的一个日志框架,它提供了灵活的日志记录功能。...
Spring提供了强大的事务管理能力,可以轻松地与ibatis结合使用。通过Spring的声明式事务管理,可以在不修改业务逻辑代码的情况下,控制方法的事务边界。 #### 3. 异常处理 ibatis抛出的异常通常是SQL执行时的异常...
而MyBatis-Spring通过提供SqlSessionTemplate和SqlSessionDaoSupport等工具类,使得MyBatis可以透明地与Spring的IoC容器和AOP事务管理相结合,减轻了开发负担。 1. SqlSessionTemplate:它是MyBatis-Spring的核心...
再通过iBATIS学习数据库操作的自动化,最后,结合Spring来整合所有组件,实现高效率的业务逻辑处理。每个框架都有其独特的设计理念,理解并熟练运用它们,可以提升你的Java Web开发技能,帮助你在实际项目中更好地...
### Spring与iBatis整合详解 #### 一、前言 在Java企业级应用开发中,Spring框架以其强大的依赖注入(DI)和面向切面...对于需要处理大量数据库操作的企业级应用而言,Spring与iBatis的结合是一种非常实用的选择。
【标题】"maven+ibatis+spring mvc源码" 涉及到的是一个典型的Java Web开发架构,结合了Maven项目管理工具、MyBatis持久层框架以及Spring MVC作为控制器层的实现。这一组合是现代企业级应用开发中的常见选择,具有...
当这三者结合使用时,Spring作为基础架构,负责对象的管理和依赖注入;Struts2作为前端控制器,处理HTTP请求并转发到相应的Action;iBatis作为数据访问层,执行数据库操作。这种集成方式的优点在于: 1. 分离关注点...
本工程用于研究Spring、Ibatis结合MySQL数据库的使用方法 本工程编码方式:UTF-8 须执行的SQL语句: CREATE DATABASE `test`; USE `test`; DROP TABLE IF EXISTS `student`; CREATE TABLE `student` ( `id` char...
在IT行业中,数据库操作是应用开发的核心部分,而...结合Spring的事务管理和Struts2的MVC结构,能够构建出稳定、高效的Web应用。在实际项目中,这样的集成方案可以大大简化开发工作,提高代码的可维护性和扩展性。