spring jdbctemplate的用法小结

 更新时间:2023年04月19日 09:16:43   作者:wd404  
jdbcTemplate是spring框架中提供的一个对象,是对原始繁杂的jdbc 对象的简单封装,本文通过实例代码介绍spring jdbctemplate的用法小结,需要的朋友可以参考下

概述

原始繁琐的JDBC API对象的封装;操作模板如下:JdbcTemplate和HibernateTemplate,操作nosql数据库RedisTemplate,消息队列JmsTemplate

JDBCTemplate开发步骤

1)导入spring-jdbc和spring-tx坐标

2)创建数据库和实体

3)创建jdbcTemplate对象

4)执行数据库操作

介绍

Spring JDBCTemplate对jdbc进行了简单的封装,提供了一个JDBCTemplate对象简化JDBC的开发

使用

1、导入jar包

<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-jdbc</artifactId>
  <version>5.1.9.RELEASE</version>
</dependency>

2、创建JdbcTemplate对象

org.springframework.jdbc.core.JdbcTemplate类有三个构造方法

public JdbcTemplate() {
}
public JdbcTemplate(DataSource dataSource) {
    setDataSource(dataSource);
    afterPropertiesSet();
}
public JdbcTemplate(DataSource dataSource, boolean lazyInit) {
    setDataSource(dataSource);
    setLazyInit(lazyInit);
    afterPropertiesSet();
}
  • 一般直接使用第二个构造方法
  • 如果使用默认构造方法,可以调用setDataSource传入DataSource对象赋值
JdbcTemplate jdbcTemplate = new JdbcTemplate(ds);

3、关于ds

(1)spring内置数据源

<!-- 配置数据源 -->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="${jdbc.driverClass}"></property>
    <property name="url" value="${jdbc.url}"></property>
    <property name="username" value="${jdbc.username}"></property>
    <property name="password" value="${jdbc.password}"></property>
</bean>
<!--加载属性文件-->
<context:property-placeholder location="classpath:properties/jdbc.properties"/>

(2)第三方数据库连接池

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

db.properties

jdbc.driverClass=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/mysite?useSSL=false&serverTimezone=UTC&characterEncoding=utf8
jdbc.username=root
jdbc.password=3145tj

4、API

<!--增删改-->
int update(String sql)
int update(String sql,Object... args)
int update(String sql,Object[] args)
<!--query-->
public <T> List<T> query(String sql, RowMapper<T> rowMapper)
queryForMap
queryForList
queryForObject

到此这篇关于spring jdbctemplate的用法小结的文章就介绍到这了,更多相关spring jdbctemplate使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • selenium+java破解极验滑动验证码的示例代码

    selenium+java破解极验滑动验证码的示例代码

    本篇文章主要介绍了selenium+java破解极验滑动验证码的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01
  • HttpMessageConverter报文信息转换器的深入讲解

    HttpMessageConverter报文信息转换器的深入讲解

    在Spring中内置了大量的HttpMessageConverter,通过请求头信息中的MIME类型,选择相应的HttpMessageConverter,这篇文章主要给大家介绍了关于HttpMessageConverter报文信息转换器的相关资料,需要的朋友可以参考下
    2022-01-01
  • 详解Java并发编程之内置锁(synchronized)

    详解Java并发编程之内置锁(synchronized)

    这篇文章主要介绍了Java并发编程之内置锁(synchronized)的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • Java String中的split方法使用总结

    Java String中的split方法使用总结

    这篇文章主要介绍了Java String中的split方法使用总结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • 分享我的第一次java Selenium自动化测试框架开发过程

    分享我的第一次java Selenium自动化测试框架开发过程

    这篇文章主要介绍了分享我的第一次java Selenium自动化测试框架开发过程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • 列举java语言中反射的常用方法及实例代码

    列举java语言中反射的常用方法及实例代码

    反射机制指的是程序在运行时能够获取自身的信息。这篇文章主要介绍了列举java语言中反射的常用方法,需要的朋友可以参考下
    2019-07-07
  • springboot+springsecurity如何实现动态url细粒度权限认证

    springboot+springsecurity如何实现动态url细粒度权限认证

    这篇文章主要介绍了springboot+springsecurity如何实现动态url细粒度权限认证的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • Java基于分治算法实现的线性时间选择操作示例

    Java基于分治算法实现的线性时间选择操作示例

    这篇文章主要介绍了Java基于分治算法实现的线性时间选择操作,涉及java排序、比较、计算等相关操作技巧,需要的朋友可以参考下
    2017-11-11
  • SpringBoot接入支付宝支付的方法步骤

    SpringBoot接入支付宝支付的方法步骤

    这篇文章主要介绍了SpringBoot接入支付宝支付的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • MyBatis属性名和字段名不一致的问题解决方法

    MyBatis属性名和字段名不一致的问题解决方法

    这篇文章给大家详细介绍了MyBatis属性名和字段名不一致的问题解决,文中有详细的代码示例和图文展示供大家参考,对大家的学习或工作有一定的参考价值,需要的朋友可以参考下
    2023-12-12

最新评论