----------------------------------------spring 整合jdbc---------------------
一、
1.spring 容器可以有多种方式连接数据库:
01.
<!--SpringJDBC需要的jar 只是spring默认的--><dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>4.2.1.RELEASE</version></dependency>
02.
<!--dbcp Aphche比较常用-->
<dependency> <groupId>commons-pool</groupId> <artifactId>commons-pool</artifactId> <version>1.6</version></dependency> <dependency> <groupId>commons-dbcp</groupId> <artifactId>commons-dbcp</artifactId> <version>1.4</version></dependency> 3.
<!--c3p0-->
<dependency> <groupId>c3p0</groupId> <artifactId>c3p0</artifactId> <version>0.9.1.2</version></dependency>4.
<!--alibaba datasource--><dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.18</version></dependency> 上面是四中方式的依赖二、我们dao实现以前都是继承basedao现在我们继承JDBCDaoSupport,具体代码如下:代码中有一个
private JdbcTemplate jdbcTemplate;这属性,spring在底层通过给dataSource赋值就可以给jdbcTemplate给上值。
package cn.bdqn.dao.impl;import cn.bdqn.Account; import cn.bdqn.dao.AccountDao; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.RowMapper; import org.springframework.jdbc.core.support.JdbcDaoSupport;import java.sql.ResultSet; import java.sql.SQLException; import java.util.List;public class AccountDaoImpl extends JdbcDaoSupport implements AccountDao {private JdbcTemplate jdbcTemplate;public List<Account> selectAccount() {String sql="select * from Account"; 注意:我们查询的时候,第二个参数是RowMapper类型的,这里通过匿名类部类实现List<Account> list = getJdbcTemplate().query(sql, new RowMapper<Account>() {public Account mapRow(ResultSet resultSet, int i) throws SQLException {Account account=new Account();account.setAid(resultSet.getInt("aid"));account.setAname(resultSet.getString("aname"));account.setBalance(resultSet.getDouble("balance"));return account;}});return list;} }
三、applicationContext.xml文件的代码:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"xmlns:context="http://www.springframework.org/schema/context"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation=" http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context.xsd"><!--01.加载jdbc.properties文件 的两种方式--><!--<context:property-placeholder location="classpath:jdbc.properties"/>--><bean class="org.springframework.context.support.PropertySourcesPlaceholderConfigurer"><property name="location" value="classpath:jdbc.properties"/></bean><!-- 02.配置数据源 001.使用spring默认的数据源<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"><property name="url" value="${jdbc.jdbcUrl}"/><property name="driverClassName" value="${jdbc.driverClass}"/><property name="username" value="${jdbc.userName}"/><property name="password" value="${jdbc.password}"/></bean>--><!--002.dbcp数据源--> 这种配置比较常用<!--<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"><property name="url" value="${jdbc.jdbcUrl}"/><property name="driverClassName" value="${jdbc.driverClass}"/><property name="username" value="${jdbc.userName}"/><property name="password" value="${jdbc.password}"/></bean>--><!--003 c3p0数据源--><!-- <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"><property name="jdbcUrl" value="${jdbc.jdbcUrl}"/><property name="driverClass" value="${jdbc.driverClass}"/><property name="user" value="${jdbc.userName}"/><property name="password" value="${jdbc.password}"/> </bean>--><!--004 使用阿里巴巴de数据源 --><bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"><property name="url" value="${jdbc.jdbcUrl}"/><property name="driverClassName" value="${jdbc.driverClass}"/><property name="username" value="${jdbc.userName}"/><property name="password" value="${jdbc.password}"/></bean><!--03.配置dao--><bean id="accountDao" class="cn.bdqn.dao.impl.AccountDaoImpl"><property name="dataSource" ref="dataSource"/></bean><!--04.配置service--><bean id="impl" class="cn.bdqn.service.impl"><property name="accountDao" ref="accountDao"/></bean></beans>
四、jdbc.properties文件的代码:
jdbc.driverClass=com.mysql.jdbc.Driver jdbc.jdbcUrl=jdbc:mysql:///mybatis jdbc.userName=root jdbc.password=000
五、目录结构:
六、prom.xml 的全部依赖:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><parent><artifactId>U3</artifactId><groupId>cn.bdqn</groupId><version>1.0-SNAPSHOT</version></parent><modelVersion>4.0.0</modelVersion><artifactId>springJDBCt14</artifactId><packaging>jar</packaging><name>springJDBCt14</name><url>http://maven.apache.org</url><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><!--spring对应的版本号--><spring.version>4.2.1.RELEASE</spring.version></properties><dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.0</version><scope>test</scope></dependency><!--引入需要的spring 核心jar--><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-expression</artifactId><version>${spring.version}</version></dependency><dependency><groupId>commons-logging</groupId><artifactId>commons-logging</artifactId><version>1.1.1</version></dependency><!--引入mysql的驱动包--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.26</version></dependency><!--配置jdbc需要的数据源--><dependency><groupId>commons-pool</groupId><artifactId>commons-pool</artifactId><version>1.6</version></dependency><dependency><groupId>commons-dbcp</groupId><artifactId>commons-dbcp</artifactId><version>1.4</version></dependency><dependency><groupId>c3p0</groupId><artifactId>c3p0</artifactId><version>0.9.1.2</version></dependency><!--SpringJDBC需要的jar--><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>${spring.version}</version></dependency><!--alibaba datasource--><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.0.18</version></dependency></dependencies> </project>
转载于:https://www.cnblogs.com/laosunlaiye/p/7684410.html
----------------------------------------spring 整合jdbc---------------------相关推荐
- spring整合jdbc
spring整合jdbc 在pom.xml文件中导入依赖: <!-- 阿里数据源 --> <dependency><groupId>com.alibaba</ ...
- Spring4.x()--Spring整合Jdbc的HelloWorld
Spring整合Jdbc的HelloWorld 一.JdbcTemplate概述 它是spring框架中提供的一个对象,是对原始Jdbc API对象的简单封装.spring框架为我们提供了很多的操作模 ...
- spring整合JDBC 实现拦截器用户的登录和注册的案例源代码及解析
前言:为了大家学习的方便,我自己完成了一个登录注册的小案例供大家参考,如有疑问?请私信博主,小主辛苦总结,望大家转载请标明出处. **项目介绍:**本项目使用的是spring整合jdbc实现用户的登录 ...
- spring整合jdbc配置文件
spring通过jdbcTemplate整合jdbc,在spring框架中管理数据源配置,并进行事务管理 <?xml version="1.0" encoding=" ...
- Spring整合JDBC开发
背景 在JDBC开发中,充斥这大量重复的代码,可能只是换了个SQL语句,其他代码是完全不用变的.Spring的jar包里,提供了一个叫JDBCTemplate的模板,在保持操作灵活方便的情况下,将代码 ...
- JDBC——(手写、spring整合)及(预编译手写、预编译spring整合)
1. 手写版本 注释概览版 //步骤://1. 加载驱动//2. 用户信息和URL//3. 连接成功,数据库对象(getConnection)//4. 执行SQL的对象(connection.crea ...
- Spring Boot操作数据库学习之整合JDBC
文章目录 一 Spring Data简介 二 Spring Boot集成JDBC 2.1 项目创建步骤 2.2 测试的SQL脚本 2.3 编写yaml配置文件连接数据库 2.4 IDEA连接数据库步骤 ...
- SpringBoot整合JDBC、整合Druid数据源详解教程
目录 一.整合JDBC 1. 环境准备 1. 创建数据库 2. 创建SpringBoot项目 3. IDEA连接数据库 2. 编写数据库配置信息 3. 编写测试类测试 4. CRUD操作数据库 1. ...
- 最新Spring整合MyBatis详解教程
目录 1.导入相关jar包 1. junit 2. mybatis 3. mysql 4. spring相关 5. aop织入 6. mybatis-spring 7. lombok(选用) 2.回顾 ...
- springMvc+mybatis+spring 整合 包涵整合activiti 基于maven
2019独角兽企业重金招聘Python工程师标准>>> 最近自己独立弄一个activiti项目,写一下整合过程: 环境:jdk1.7 tomcat7.0 maven3.5 ecli ...
最新文章
- 两台路由器之间建立邻接关系的过程即报文信息交换过程
- HDU 6114 Chess 【组合数】(2017百度之星程序设计大赛 - 初赛(B))
- BZOJ 2733 | 洛谷 P3224 [HNOI2012]永无乡
- Docker必备知识整理
- HTTP WS 区别
- 安卓案例:利用定时器实现逐帧动画
- SQL 使用总结六(改善数据库性能)
- 用matlab开发软件开发,Matlab软件应用与开发new
- Mapreduce的分区—Partitioner
- TensorFlow on Windows: “Couldn't open CUDA library cudnn64_5.dll”
- 关于Oracle分区的一篇文章
- vmlinux_32.lds.S
- php中的get_called_class()方法
- MySQL中leftjoin和rightjoin的区别
- 计算机考研复试汇总(所有科目)
- 计算机毕业设计java+ssm校园在线投票系统(源码+系统+mysql数据库+Lw文档)
- mac文件管理服务器,Path Finder For Mac v8.6 高效的文件管理工具 _ 黑苹果乐园
- Unity游戏开发:背包系统的实现
- 【初/中级前端面经】中小型公司面试时都会问些什么?
- 第 l 个数到第 r 个数的和
热门文章
- android 条码扫描控件,Android Zxing条码扫描自定义控件(附代码)
- springboot开启gzip压缩(springboot 1.3以上适用)
- 让一让,神州泰岳要进化了
- mac环境下配置nginx
- ASP.NET MVC 控制器激活(三)
- Linux指令--touch
- Javascript in one picture
- 体验c#面向对象的编程
- 11、doCreateBean中的initializeBean
- bae php微信配置,使用BAE3.0搭建微信开发环境