1、spring对DAO的支持 Java代码 public class AccountServiceImpl implements AccountService{ private AccountDao accountDao; /** set方法注入 */ public void setAccountDao(AccountDao accountDao); this.accountDao = accountDao; } public void insert(Account acc){ accountDao.insert(acc); } } 从这个类的源代码可以看出,程序所依赖的是数据访问接口。因此,可以随时更换AccountDao的实现类。Spring的DAO框架正式基于这样的基本原理来将应用程序与底层数据存取技术解耦的。 2、数据源的注入 对数据库数据执行任何的存取操作,必须要有数据源,spring提供了javax.sql,DataSource注入,这样在需要更换数据源时只需要在spring配置文件中修改即可。而不需要修改程序代码。 不同的应用系统可能使用不同的数据源。 2.1、不带连接池的数据源 Xml代码 <!-- 配置不带连接池的数据源 --> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver" /> <property name="url" value="jdbc:mysql:///spring" /> <property name="username" value="root" /> <property name="password" value="123> </bean> <bean id="accountDao" class="com.zxf.dao.AccountDaoImpl"> <property name="dataSource" ref="dataSource" /> </bean> <bean id="accountService" class="com.zxf.service.AccountService"> <property name="accountDao" ref="accountDao"/> </bean> 2.2、集成第三方连接池技术的数据源 第一种方式所获取的数据源是不带连接池的,不适合正式的商业使用。正式的商业应用需要使用带连接池的数据源,比较常见的第三方连接池有:DBCP和C3P0。 要想使用第三方的连接池技术,首先需要在项目类路径下添加它的类库。 commons-dbcp.jar 和 commons-pool.jar. Xml代码 <!-- 配置DBCP的数据源 --> <bean id="dataSource2" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql:///spring" /> <property name="username" value="root" /> <property name="password" value="123" /> </bean> <!-- 配置C3P0的数据源 --> <bean id="dataSource3" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"> <property name="driverClass" value="com.mysql.jdbc.Driver" /> <property name="jdbcUrl" value="jdbc:mysql:///spring" /> <property name="user" value="root" /> <property name="password" value="123”/> </bean> 备注:若要使用分散配置设置数据库的连接的话,可以使用分散配置。在配置数据源的是代码前面配置一下的代码。 Xml代码 <!-- 分散配置 --> <context:property-placeholder location="jdbc.properties"/> 举例: <!-- 驱动程序 --> <property name="driverClass"> <value>${jdbc.driverClass}</value> </property> <!-- 连接的url地址 --> <property name="jdbcUrl"> <value>${jdbc.url}</value> </property> <!-- 连接的用户名 --> <property name="user"> <value>${jdbc.user}</value> </property> <!-- 连接的用户名的密码 --> <property name="password"> <value>${jdbc.password}</value> </property> <!-- 最大池数 --> <property name="maxPoolSize"> <value>${c3p0.pool.max}</value> </property> <!-- 最小池数 --> <property name="minPoolSize"> <value>${c3p0.pool.min}</value> </property> <!-- 默认的初始化的池数 --> <property name="initialPoolSize"> <value>${c3p0.pool.init}</value> </property> Properties代码 下面是jdbc.properties jdbc.driverClass=com.mysql.jdbc.Driver jdbc.url=jdbc\:mysql\://localhost\:3306/spring jdbc.user=root jdbc.password=123 c3p0.pool.max=10 c3p0.pool.min=3 c3p0.pool.init=5
相关推荐
开源框架spring详解-----spring对JDBC的支持开源框架spring详解-----spring对JDBC的支持开源框架spring详解-----spring对JDBC的支持
spring jar 包详解 spring.jar是包含有完整发布的单个jar包,spring.jar中包含除了 spring-mock.jar里所包含的内容外其它所有jar包的内容,因为只有在开发环境下才会用到spring-mock.jar来进行辅助测试,正式应用...
Spring2.5各个包的作用详解 (1) spring-core.jar (2) spring-beans.jar (3) spring-aop.jar .... Spring包依赖说明: 1) spring-core.jar需commons-collections.jar,spring-core.jar是以下其它各个的基本。 2) ...
spring接管jdbc详解
spring jar 包详解spring.jar是包含有完整发布的单个jar包,spring.jar中包含除了 spring-mock.jar里所包含的内容外其它所有jar包的内容,因为只有在开发环境下才会用到spring-mock.jar来进行辅助测试,正式应用系统...
实例详解Spring JDBC事务管理.doc 实例详解Spring JDBC事务管理.doc
Spring容器高级主题 第6章 Spring AOP基础 第7章 基于@AspectJ和Schema的 第7章 AOP 第3篇 数据库访问 第8章 Spring对DAO的支持 第9章 Spring的事务管理 第10章 使用Spring JDBC访问数据库 ...
本篇文章主要介绍了基于Spring的JDBC基本框架搭建;基于Spring的JDBC增删改查;读取配置文件中的数据等,具有很好的参考价值。下面跟着小编一起来看下吧
13.8. Spring对分段文件上传(multipart file upload)的支持 13.8.1. 介绍 13.8.2. 使用MultipartResolver 13.8.3. 在表单中处理分段文件上传 13.9. 使用Spring的表单标签库 13.9.1. 配置标签库 13.9.2. form标签 ...
Spring作为现在最优秀的框架之一已被广泛的使用51CTO也曾经针对Spring框架中的JDBC应用做过 报道。本文将从另外一个视角试图剖析出Spring框架的作者设计Spring框架的骨骼架构的设计理念。 Rod Johson在2002年...
Spring BeanFactory Spring IOC(控制翻转)/DI(依赖注入) Spring Proxy Spring AOP 面向切面编程 Spring与JDBC整合 Spring声明式事务 Spring与Hibernate整合 Spring与Struts整合
主要介绍了spring对JDBC和orm的支持实例详解,需要的朋友可以参考下
- Spring Boot 数据库操作,包括SpringJDBC、JPA、Mybatis注解版 & XML版、MongoDB。其中,每个版本都有其对应的多数据源解决方案。 - springboot-caches - Spring Boot 缓存,包括redis、ehcache、spring-cache...
Spring容器高级主题 第6章 Spring AOP基础 第7章 基于@AspectJ和Schema的 第7章 AOP 第3篇 数据库访问 第8章 Spring对DAO的支持 第9章 Spring的事务管理 第10章 使用Spring JDBC访问数据库 ...
主要介绍了Spring jdbc具名参数使用方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
本代码使用了Spring MVC框架(spring2.5架包) 演示了(Controller接口的试用方法)和 MultiActionController多动作控制器 数据库连接试用Spring JDBC 并且着重介绍了MultiActionController多动作控制器的两种方法名...
分片JDBC-分片数据库和表的JDBC驱动程序 概述 分片JDBC是JDBC的扩展,提供了诸如分片,读/写拆分和BASE事务之类的分布式功能。 特征 1.分片 分布式数据库中支持的聚合功能,分组依据,排序依据和限制SQL。 支持联接...
【第一章】 Spring概述 ——跟我学Spring3 【第二章】 IoC 之 2.1 IoC基础 ——跟我学Spring3 【第二章】 IoC 之 2.2 IoC 容器基本原理...【第七章】 对JDBC的支持 之 7.5 集成Spring JDBC及最佳实践 ——跟我学spring3
主要介绍了Spring JDBC的使用方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
Spring容器高级主题 第6章 Spring AOP基础 第7章 基于@AspectJ和Schema的 第7章 AOP 第3篇 数据库访问 第8章 Spring对DAO的支持 第9章 Spring的事务管理 第10章 使用Spring JDBC访问数据库 ...