java jdbc jar包_通过 Spring 框架如何进行JDBC操作呢?
Spring 整合 JDBC 的方式
- 添加依赖
- 编写配置文件 db.properties
- bean.xml 配置修改
- 配置数据源
- 模板类配置
- 测试整合结果
案例实操
添加依赖
数据库驱动 jar 包
mysql
数据库连接池相关 jar 包
c3p0
Spring jdbc 相关 jar
spring
配置文件db.properties
jdbc
以下为可选配置
initialPoolSize
bean.xml 配置修改
加载 properties 文件配置
<!-- 加载 properties 配置文件 -->
配置数据源
由于建立数据库连接是一个非常耗时耗资源的行为,所以通过连接池预先 同数据库建立一些连接,放在内存中,应用程序需要建立数据库连接时直接到连 接池中申请一个就行,用完后再放回去。
C3P0 与 dbcp 二选一即可
DBCP(DataBase connection pool),数据库连接池。是 apache 上的一个 java 连接池项目,也是 tomcat 使用的连接池组件。单独使用 dbcp 需要 2 个包:commons-dbcp.jar,commons-pool.jar dbcp,没有自动回收空闲连接的功能.
C3P0 是一个开源的 JDBC 连接池,它实现了数据源,支持 JDBC3 规范和 JDBC2 的标准扩展。目前使用它的开源项目有 Hibernate,Spring 等。c3p0 有自动回收空闲连接功能
C3P0 数据源配置
<!-- 配置 c3p0 数据源 -->
C3P0 其他额外配置(对应的值在 db.properties 文件中指定)
<!-- 指定连接池中保留的最大连接数. Default:15-->
对于 dbcp 数据源配置如下:
<!-- 配置 dbcp 数据源-->
模板类配置
Spring 把 JDBC 中重复的操作建立成了一个模板类:org.springframework.jdbc.core.JdbcTemplate ,配置文件中加入
<!-- jdbcTemplate 配置 -->
测试整合结果
通过 junit 测试 jdbcTemplate bean 是否获取到
public
扩展
JDBC 事务
如果应用程序中直接使用 JDBC 来进行持久化,此时使用 DataSourceTransactionManager 来处理事务边界。为了使用 DataSourceTransactionManager,需要使用如下的 XML 将其装配到应用程序的上下文定义中:
<bean
实际上,DataSourceTransactionManager 是通过调用 java.sql.Connection 来管理事务, 而后者是通过 DataSource 获取到的。通过调用连接的 commit()方法来提交事务,同样,事务失败则通过调用 rollback()方法进行回滚。
java jdbc jar包_通过 Spring 框架如何进行JDBC操作呢?相关推荐
- java jdbc jar包_大数据从入门到深入:JavaEE 之 数据库技术 JDBC(1)
1章 JDBC 1.1 JDBC概述 JDBC(Java DataBase Connectivity,java动态数据 库连接技术)是一种用于执行SQL语句的Java API : Applicatio ...
- java groovy jar包_如何将jar包包含在groovy脚本中?
如果你真的需要,你也可以在运行时加载一个JAR: this.getClass().classLoader.rootLoader.addURL(new File("file.jar" ...
- spring boot jar包_「Spring Boot 新特性」 jar 大小自动瘦身
自动分析瘦身 Spring Boot 项目最终构建处理 JAR 包大小一直是个诟病,需要把所有依赖包内置最终输出可运行的 jar.当然可以使用其他的插件扩展 实现依赖 JAR 和 可运行 jar 分离 ...
- java bat 运行 jar文件_运行bat文件启动java的jar且不弹出DOS窗口,后台运行java的jar包...
本文主要是将java的jar包启动的cmd命令添加到bat文件来执行,且不弹出DOS窗口,也就是后台运行java的jar包. 这里以win10为例 1.新建 一个txt文件,在文件添加以下内容.其中E ...
- java -jar 停止_推荐:Linux启动Java程序jar包Shell脚本
每次启动Java程序jar包的时候,难道你还在手敲java -jar xxserver.jar--?边敲边想着都需要追加哪些参数? 今天就推荐给大家一个几乎通用的Shell脚本,它支持Java程序Ja ...
- php项目如何导jdbc包,JDBC-idea导入mysql连接java的jar包(mac)的方法
前言 1.本文使用的是mysql8.0版本 与5.0版本相比:导包方式相同,后面代码中的注册驱动方式不同 1.mac与pc的idea菜单和图标不是完全相同,但是步骤是差不多的 下载对应版本的jar包 ...
- java ear包_简单介绍Java 的JAR包、EAR包、WAR包区别
原标题:简单介绍Java 的JAR包.EAR包.WAR包区别 WAR包 WAR(Web Archive file)网络应用程序文件,是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件.War专 ...
- Java常见Jar包的用途
jar包 用途 axis.jar SOAP引擎包 commons-discovery-0.2.jar 用来发现.查找和实现可插入式接口,提供一些一般类实例化.单件的生命周期管理的常用方法. jaxrp ...
- JAVA常用jar包简介
java开发中主要用到的jar包介绍 commons-io.jar: 可以看成是java.io的扩展,用来帮助进行IO功能开发.它包含三个主要的领域:Utilityclasses-提供一些静态方法来完 ...
最新文章
- jquery投色子动画
- 学python要考什么证-这十个Python常用库,学习Python的你必须要知道!
- net4.0 程序没反应_@Java程序员,精通Spring,你不得不知道的那些书
- 封装getByClass(JS获取class的方法封装为一个函数)
- MyBatis 插件原理与自定义插件-需求实现
- h.264视频文件封装
- 利用支持MicroPython的TPYBoard开发板自制PM2.5检测仪(萝卜教育学科式编程)
- 简单解决新浪博客“您短时间发表文章过多,请稍后再试”的问题
- linux早期内核的khttpd服务器--策略污染机制
- 执行数据库命令Command对象——ADO.NET学习应用笔记之三
- 1.SpringDataJPA (查询:主键或其他字段、增加/修改、分页) 2021最新技术~方便快捷 博主可答疑
- 探索深海生态系统和冰卫星的协同作用-深海机器人开发与空间技术合作
- TYUT太原理工大学2022需求工程考试填空题
- 《21天学通HTML+CSS+JavaScript Web开发(第7版)》——2.4 您要在Web上做什么
- 考研前夕 — 成人的世界里没有那么多童话
- 5个海盗分100颗宝石
- css实现人走路效果,纯css实现机器人走路动画
- Java正则表达式校验密码规则
- C语言读取文件函数:fgets(); fgetc()
- Python在Linux下获取CPU温度、使用率、内存使用率、硬盘使用率
热门文章
- centos7安装Nginx 配置及反向代理
- 【总结】C++逻辑与或
- BeanUtils介绍及其使用
- 为当前会话的所有作用域中的任何表最后生成的标识值。
- c 语言 volatile 关键字
- Android 中文API (68) —— BluetoothClass.Service
- Tomcat 添加为系统服务 开机自动启动
- linux wireshark 安装教程,Linux下安装和运行Wireshark
- usb连接不上 艾德克斯电源_工程师,USB与SPI之间如何通信?什么芯片方案可以实现...
- 注解@controller的作用_@controller和@Restontroller区别