zoukankan      html  css  js  c++  java
  • spring jdbctemplate使用

    介绍

    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


  • 相关阅读:
    Memory Limit Exceeded
    浙江省程序设计竞赛2019
    hdu3974 Assign the task
    TCP面向字节流和UDP面向报文的区别
    django-admin和django-admin.py的区别
    利用 pip 安装 Python 程序包到个人用户文件夹下
    PyCharm中目录directory与包package的区别及相关import详解
    分布式表示(Distributed Representation)
    Nginx
    32.最长有效括号
  • 原文地址:https://www.cnblogs.com/heibaimao123/p/13792496.html
Copyright © 2011-2022 走看看