java mysql template_详解在spring中使用JdbcTemplate操作数据库的几种方式

使用JdbcTemplate的步骤

1、设置spring-jdbc和spring-tx的坐标(也就是导入依赖)

org.springframework

spring-jdbc

5.2.7.RELEASE

org.springframework

spring-tx

5.2.7.RELEASE

2、创建数据表和实体类

创建数据表的过程省略

创建实体类Account

package com.jdbcTemplate.bean;

public class Account {

private String name;

private Double money;

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public Double getMoney() {

return money;

}

public void setMoney(Double money) {

this.money = money;

}

@Override

public String toString() {

return "Account{" +

"name='" + name + '\'' +

", money=" + money +

'}';

}

}

3、创建数据源、JdbcTemplate对象

4、执行数据库操作

实现3、4步的方法提供以下三种

方法一:代码中直接配置数据源和数据对象

创建JdbcTemplate对象+执行jdbc语句

//创建数据源对象

DriverManagerDataSource ds = new DriverManagerDataSource();

ds.setDriverClassName("com.mysql.jdbc.Driver");

ds.setUrl("jdbc:mysql://localhost:3306/think");

ds.setUsername("root");

ds.setPassword("");

//创建jdbcTemplate对象

JdbcTemplate jt = new JdbcTemplate();

//执行操作(插入操作)

jt.setDataSource(ds);

jt.execute("insert into account(name,money)value('EVA',50000)");

方法二:在resources目录下配置xx.xml文件,对数据源、JdbcTemplate进行注入

配置xml文件

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns:p="http://www.springframework.org/schema/p"

xsi:schemaLocation="http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans.xsd">

使用配置操作数据库

编写test类测试

//二、使用配置操作数据库

//1、获取容器

ApplicationContext ac = new ClassPathXmlApplicationContext("beans5.xml");

//2、获取对象

JdbcTemplate jt = ac.getBean("jdbcTemplate",JdbcTemplate.class);

//、执行操作

// jt.execute("insert into account(name,money)value ('Alice',2000)");

//保存

//jt.update("insert into account(name,money)value (?,?)","Eden",100);

//更新

// jt.update("update account set money=?,name=? where name=?",1000,"Kiroto","Eden");

//删除

//jt.update("delete from account where name =? and money =?","Kiroto",1000);

//查找

List list = jt.query("select * from account where name =?",new BeanPropertyRowMapper(Account.class),"Eden");

System.out.println(list.isEmpty()?"没有查找结果":list.get(0));

方法三:使用接口实现

创建template接口和templateDAO接口实现类

接口

package com.jdbcTemplate.test;

import com.jdbcTemplate.bean.Account;

public interface Template {

Account find(String name);

int update(Account account);

int delete(Account account);

int add(Account account);

}

接口实现类

package com.jdbcTemplate.test;

import com.jdbcTemplate.bean.Account;

import org.springframework.jdbc.core.BeanPropertyRowMapper;

import org.springframework.jdbc.core.JdbcTemplate;

import java.util.List;

public class TemplateDAO implements Template {

private JdbcTemplate jdbcTemplate;

public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {

this.jdbcTemplate = jdbcTemplate;

}

public Account find(String name) {//查找

List list = jdbcTemplate.query("select * from account where name=?",

new BeanPropertyRowMapper(Account.class),name);

return list.isEmpty()?null:list.get(0);

}

public int update(Account account) {//更新

return jdbcTemplate.update("update account set money=? where name=?",

account.getMoney(),account.getName());

}

public int delete(Account account) {//删除

return jdbcTemplate.update("delete from account where name =?",account.getName());

}

public int add(Account account) {//添加

return jdbcTemplate.update("insert into account(name ,money)value (?,?)",account.getName(),account.getMoney());

}

}

在测试之前,因为多了一个接口实现类,除了数据源和jdbcTemplate之外,应当在xml配置文件中多配置一个TemplateDAO

编写测试类进行测试

import com.jdbcTemplate.bean.Account;

import com.jdbcTemplate.test.Template;

import org.springframework.context.ApplicationContext;

import org.springframework.context.support.ClassPathXmlApplicationContext;

public class mytest {

public static void main(String[] args) {

ApplicationContext ac = new ClassPathXmlApplicationContext("beans6.xml");

Template tp = ac.getBean("templateDAO",Template.class);//注意对比方法二的不同

Account account = tp.find("Lily");

System.out.println(account.toString());

}

}

到此这篇关于详解在spring中使用JdbcTemplate操作数据库的几种方式的文章就介绍到这了,更多相关spring JdbcTemplate操作数据库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值