Spring - JdbcTemplate(一),最基本的使用方法

一、概述

在这里插入图片描述
JdbcTemplate是spring框架中提供的一个对象,是对原始Jdbe API对象的简单封装。spring 框架为我们提供了很多的操作模板类。
操作关系型数据的:
JdbcTemplate
HibernateTemplate
操作nosql数据库的:
RedisTemplate
操作消息队列的:
JmsTemplate

二、JdbcTemplate的使用

准备工作

首先导入相关的依赖
pom.xml

    <dependencies>
<!--        spring的依赖-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.0.2.RELEASE</version>
        </dependency>
<!--        支持jdbc的依赖-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>5.0.2.RELEASE</version>
        </dependency>
<!--        支持事务的依赖-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-tx</artifactId>
            <version>5.0.2.RELEASE</version>
        </dependency>
<!--        连接mysql的依赖-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.6</version>
        </dependency>
    </dependencies>

在java文件夹下,新建以下文件
在这里插入图片描述
实体类代码

public class Account implements Serializable {
    private Integer id;
    private String  name;
    private Float money;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Float getMoney() {
        return money;
    }

    public void setMoney(Float money) {
        this.money = money;
    }

    @Override
    public String toString() {
        return "Account{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", money=" + money +
                '}';
    }
}

最基础的用法一

JdbcTemplateDemo1.java
下面这些要改为自己的数据库相关信息
在这里插入图片描述

/**
 * JdbcTemplate基本用法
 */
public class JdbcTemplateDemo1 {
    public static void main(String[] args){
        DriverManagerDataSource ds = new DriverManagerDataSource();
        ds.setDriverClassName("com.mysql.jdbc.Driver");
        ds.setUrl("jdbc:mysql://localhost:3306/******");
        ds.setUsername("****");
        ds.setPassword("*****");
        //1.创建JdbcTemplate对象
        JdbcTemplate jt = new JdbcTemplate();
        //为jt设置数据源
        jt.setDataSource(ds);
        jt.execute("insert into account(name,money) values('ccc',1000)");
    }
}

基础用法二

和(resorces下新建bean.xml)配置文件一起使用
在xml也要配置自己的连接信息,url 用户名 驱动 密码等
bean.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
   
    <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
        <property name="dataSource" ref="dataSource"></property>
    </bean>
    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
        <property name="url" value="jdbc:mysql://localhost:3306/******"></property>
        <property name="username" value="*****"></property>
        <property name="password" value="****"></property>
    </bean>
</beans>

JdbcTemplateDemo2

public class JdbcTemplateDemo2 {
    public static void main(String[] args){
        //获取容器
        ApplicationContext ac = new ClassPathXmlApplicationContext("bean.xml");
        //获取对象
        JdbcTemplate jt = ac.getBean("jdbcTemplate",JdbcTemplate.class);
        //执行操作
        //插入
        jt.update("insert into account(name,money) values(?,?)","eee",333f);
        //更新
        jt.update("update account  set name=?,monry=? where id=?","abc",200f,3);
        //删除
        jt.update("delete from account where id = ?",7);
        //查询所有
        jt.query("select * from account where money > ?",new BeanPropertyRowMapper<Account>(Account.class),1000f);
        //查询一个
        jt.query("select * from account where id = ?",new BeanPropertyRowMapper<Account>(Account.class),2);
        //返回一行一列
       Long count =  jt.queryForObject("select count(*) from account where money > ?",Long.class,1000f);
    }
}

JdbcTemplate(二),Dao层的使用
https://blog.csdn.net/qq_43661408/article/details/104411934

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值