libs:
c3p0-0.9.1.2.jar
jtds-1.2.5.jar
commons-logging.jar
log4j-1.2.15.jar
spring.jar
ibatis-2.3.4.726.jar
环境:JDK1.6+SPRING2.5.6+IBATIS2
DB:SQLSERVER2000(驱动JTDS,c3p0连接池)
=====Spring配置如下(service.xml)============
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd">
<import resource="sql-map-daos.xml" />
<bean id="productService" class="com.me.service.ProductService">
<property name="productDao">
<ref bean="productDao" />
</property>
</bean>
...
</beans>
============sql-map-daos.xml===========
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="productDao" class="com.me.dao.ibatis.SqlMapProductDao">
<property name="sqlMapClient" ref="sqlMapClient" />
</bean>
<bean id="supplierDao" class="com.me.dao.impl.SupplierDaoImpl" />
<bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<value>classpath:conn/jdbc.properties</value>
</property>
</bean>
<bean id="sqlMapClient"
class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation" value="sql-map-config.xml" />
<property name="dataSource" ref="dataSource" />
</bean>
<bean id="dataSource"
class="com.mchange.v2.c3p0.ComboPooledDataSource"
destroy-method="close">
<property name="driverClass" value="${jdbc.driverClassName}" />
<property name="jdbcUrl" value="${jdbc.url}" />
<property name="user" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
<property name="minPoolSize" value="1" />
<property name="initialPoolSize" value="2" />
<property name="maxPoolSize" value="20" />
<property name="maxIdleTime" value="1800" />
<property name="acquireIncrement" value="2" />
<property name="maxStatements" value="3" />
<property name="idleConnectionTestPeriod" value="1800" />
<property name="acquireRetryAttempts" value="3" />
</bean>
</beans>
============sql-map-config.xml==============
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN"
"http://www.ibatis.com/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<sqlMap resource="com/me/dao/ibatis/maps/Product.xml" />
</sqlMapConfig>
===============Product.xml====================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="Product">
<cacheModel id="oneDayProduct" type="MEMORY">
<flushInterval hours="24"/>
<property name="reference-type" value="WEAK"/>
</cacheModel>
<resultMap id="result" class="com.me.domain.Product">
<result property="productId" column="productid" columnIndex="1"/>
<result property="name" column="name" columnIndex="2"/>
<result property="description" column="descn" columnIndex="3"/>
<result property="categoryId" column="category" columnIndex="4"/>
</resultMap>
<select id="getProduct" resultMap="result">
select productid, name, descn, category from product where productid = #value#
</select>
</sqlMap>
================= SqlMapProductDao =======
public class SqlMapProductDao extends SqlMapClientDaoSupport implements
ProductDao {
public List getProductListByCategory(String categoryId)
throws DataAccessException {
return getSqlMapClientTemplate().queryForList(
"getProductListByCategory", categoryId);
}
public Product getProduct(String productId) throws DataAccessException {
return (Product) getSqlMapClientTemplate().queryForObject("getProduct",
productId);
}
....
================ Product ========
public class Product implements Serializable {
/* Private Fields */
private String productId;
private String categoryId;
private String name;
private String description;
....setter/getter...
===============测试如下:
public class IBATISDBTest {
/**
* @param args
*/
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext(
new String[] { "services.xml", "sql-map-*.xml" });
ProductService productService = (ProductService) context
.getBean("productService");
String productId="AV-CB-01";
productService.getProductByID(productId);
}
}
分享到:
相关推荐
里面有 Sprng2.5.6+Hibernate3.6+Struts2.3.16的Jar包 已经分好类 但是strut2里面只是包含了最基础的Jar包,其他的按需自己+。 里面还有 jstl标签库的jar 和 数据库MySQL的驱动包 详细配置方法: ...
总结来说,"spring4.0+mybatis3.2+springMvc+easyui1.3.2"的组合是一个高效、稳定且兼容旧浏览器的Java Web解决方案。通过合理的架构设计和组件的灵活运用,可以构建出功能完备、用户体验良好的企业级应用。这个技术...
标题 "Ext Struts2.0 Spring2.0 Ibatis2.3 示例" 涉及的是一个集成开发环境,这个环境结合了三个重要的Java技术框架:Struts2、Spring和Ibatis,用于构建高效的企业级应用程序。让我们逐一深入探讨这三个框架及其在...
包含源代码,发布文档和系统说明文档 开发环境:1、struts2+sprng+hibernate+ajax+html 2、 将所有sql写在了配置文件来代替dao层,简化了开发,增加了可维护性。
作用: 1、可以将几个系统的权限都由该系统管理(用户只能管理用户所属组内的角色和权限) 2、可以在此系统框架上开发其他业务逻辑 3、struts2+sprng+hibernate+ajax+html+mysql
在本文中,我们将深入探讨如何将Spring框架与Apache Kafka集成,以便实现在Spring应用中发送和接收消息。Kafka是一个高吞吐量、分布式的发布/订阅消息系统,而Spring框架是Java开发中最广泛使用的应用框架之一。...
总结来说,"spring+springMVC+mybatis+quartz动态定时任务创建"这个技术栈利用Spring的全面性、Spring MVC的Web处理能力、MyBatis的数据访问效率以及Quartz的定时任务管理,构建出一个能够灵活应对各种定时需求的...
【Spring和Struts的区别】 Spring和Struts是两种在Java Web开发中广泛使用的框架,它们在功能和设计上有显著的差异。Struts是MVC(Model-View-Controller)架构的典型代表,主要关注Web应用的表示层,而Spring则是...
spring配置 spring配置 spring配置 spring配置 spring配置
在Java Web开发中,Spring框架和Servlet技术是两个核心组件,它们经常被用来构建高效、可扩展的Web应用程序。...这个“Spring+Servlet读取数据库返回JSON数据(源码).zip”文件很可能是包含了一个示例项目,展示了如何...