JdbcTemplate简介

  Spring对数据库的操作在jdbc上面做了深层次的封装,使用spring的注入功能,可以把DataSource注册到JdbcTemplate之中。

JdbcTemplate位于中。其全限定命名为org.springframework.jdbc.core.JdbcTemplate,被设计为线程安全,。

要使用JdbcTemlate还需一个这个包包含了数据库的事务和异常控制

JdbcTemplate主要提供以下五类方法进行调用:

  • execute方法:可以用于执行任何SQL语句,一般用于执行DDL语句;

  • update方法及batchUpdate方法:update方法用于执行新增、修改、删除等语句;batchUpdate方法可以用于执行批处理相关语句;

  • query方法及queryForXXX方法:用于执行查询相关语句;

  • call方法:用于执行存储过程、函数相关语句。

创建一个用来连接数据库所需要的properties文件db.properties

      jdbc.user=rootjdbc.password=123456jdbc.driverClass=com.mysql.jdbc.Driverjdbc.jdbcUrl=jdbc\:mysql\:///test

配置Spring配置文件applicationContext.xml,读取properties文件

<context:property-placeholder location="classpath:db.properties"/>
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="user" value="${jdbc.user}"></property>
<property name="password" value="${jdbc.password}"></property>
<property name="driverClass" value="${jdbc.driverClass}"></property>
<property name="jdbcUrl" value="${jdbc.jdbcUrl}"></property>
</bean>

<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="dataSource"></property>
</bean>

update操作数据

//启动IoC容器
ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext.xml");    
//获取IoC容器中JdbcTemplate实例
JdbcTemplate jdbcTemplate=(JdbcTemplate) ctx.getBean("jdbcTemplate");
String sql="insert into user (name,deptid) values (?,?)";
int count= jdbcTemplate.update(sql, new Object[]{"caoyc",3});

//通过update插入数据
System.out.println(count);

//通过update修改数据

           String sql="update user set name=?,deptid=?,where id=?";jdbcTemplate.update(sql,new Object[]{"zhh",5,51});

           //通过update删除数据

         String sql="delete from user where id=?";
         jdbcTemplate.update(sql,51);

批量插入数据

String sql="insert into user (name,deptid) values (?,?)";

List<Object[]> batchArgs=new ArrayList<Object[]>();
batchArgs.add(new Object[]{"caoyc",6});
batchArgs.add(new Object[]{"zhh",8});
batchArgs.add(new Object[]{"cjx",8});

jdbcTemplate.batchUpdate(sql, batchArgs);

来源于:https://www.cnblogs.com/caoyc/p/5630622.html

 


转载于:https://www.cnblogs.com/hkMblogs/p/10809128.html

jdbcTemplate数据库连接的使用相关推荐

  1. JdbcTemplate数据库连接耗尽问题排查

    目录 问题起因 排查思路 步骤一:通过jvisualvm查看线程情况 步骤二:在代码中通过打印dbcp可用连接数 步骤三:顺着源代码看 jdbcTemplate.queryForStream 解决方案 ...

  2. spring5 jdbcTemplate

    1.Jdbc Template概述 Spring框架对JDBC进行封装,使用Jdbc Template方便实现对数据库操作 2.案例演示 2.1 准备工作 (1)向lib引入相关jar包(Maven搞 ...

  3. Java学习之SpringBoot整合SSM Demo

    背景:在Java Web中Spring家族有着很重要的地位,之前JAVA开发需要做很多的配置,一堆的配置文件和部署调试一直是JavaWeb开发中的一大诟病,但现在Spring推出了SpringBoot ...

  4. webmagic采集CSDN的Java_WebDevelop页面

    项目中使用到了webmagic,采集论坛一类的页面时需要一些特殊的配置.在此记录一下 先来看看我要采集的页面 点击第2页可以看到它的url是http://bbs.csdn.net/forums/Jav ...

  5. JDBC学习笔记03【JDBC事务管理、数据库连接池、JDBCTemplate】

    黑马程序员-JDBC文档(腾讯微云)JDBC笔记.pdf:https://share.weiyun.com/Kxy7LmRm JDBC学习笔记01[JDBC快速入门.JDBC各个类详解.JDBC之CR ...

  6. Java Web 03 — JDBC_02(数据库连接池_C3P0_Druid、JdbcTemplate)

    文章目录 六:数据库连接池 6.1 概念 6.2 c3p0 6.3 Druid 6.4 DBCP(Apache) 6.5 DBUtils(快速创建对象,并以集合形式返回) 七.Spring JDBC ...

  7. JDBC,JdbcTemplate,JPA傻傻分不清楚

    2019独角兽企业重金招聘Python工程师标准>>> JDBC.JDBCTemplate.MyBatis.Hiberante.Jpa关系概述 JDBC的使用 使用JDBC访问数据库 ...

  8. c3p0和jdbctemplate配置oracle集群rac,C3P0连接池、DRUID连接池和JdbcTemplate

    目录 一.C3P0连接池 1.C3P0连接池简介 2.常用的配置参数 3.C3P0连接池基本使用 (1)C3P0配置文件 (2)API介绍 4.使用步骤 二.DRUID连接池 1. DRUID简介 2 ...

  9. spring-使用配置文件完成JdbcTemplate操作数据库-c3p0

    一.创建spring项目     项目名称:spring101302 二.在项目上添加jar包     1.在项目中创建lib目录         /lib     2.在lib目录下添加spring ...

最新文章

  1. iOS 导航栏遮挡视图
  2. java 四种实现延迟加载的方法
  3. 卡塔尔大学发布全景分割 2021 年最新综述
  4. ocp证书怎么考_没有基础怎么考初级会计证书?
  5. Java静态方法和实例方法 java中的数组作为形参传入
  6. ATM系统之问题描述与词汇表
  7. Antenna Placement(二分图的最大匹配)
  8. python中、既可以将数据通过print_整理了8个Python中既冷门又实用的技巧
  9. 十大骨传导耳机品牌,骨传导耳机品牌推荐
  10. android auto凯迪拉克,凯迪拉克支持Apple CarPlay及Android Auto
  11. RTCP 协议的 NACK 报文
  12. eaxyx验证布丰投针试验,求解圆周率
  13. Elasticsearch自定义客户端(TransportClient)资源池
  14. 三相异步电机基于模型的效率估计算法
  15. ubuntu 安装 pip 及 pip 常用命令
  16. 浅谈网络地址转换(NAT)技术与内网、外网
  17. 求Jordan标准型
  18. 网络安全 社会工程学--钓鱼网站的制作和利用(让你了解整个钓鱼网站 背后的秘密.)
  19. VMWare Player设置双屏显示
  20. 基于SpringBoot的企业人事管理系统

热门文章

  1. 关于高德地图Android开发时地图只显示一次、第二次打开不定位的解决办法
  2. 每天一道LeetCode-----将字符串拆分成有效的ip地址
  3. 每天一道LeetCode-----移除有序链表中的重复节点
  4. java学习笔记2022.2.11
  5. Android安卓模拟器中模拟SD卡
  6. RISC与CISC比较
  7. 分数化成有限小数的方法_[153]各种循环小数化成分数的方法归纳
  8. ubuntu系统靠谱的清理内存的方法(can not allocate memory 问题)
  9. java网络文章博客抓取系统_java 后端博客系统文章系统——No3
  10. python和perl哪个好_做为脚本语言来说perl和python那个更有优势?