JdbcTemplate简单入门

导入依赖

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>5.2.5.RELEASE</version>
</dependency>

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

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-tx</artifactId>
    <version>5.2.5.RELEASE</version>
</dependency>

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.19</version>
</dependency>

使用方法

  • 准备数据源
DriverManagerDataSource ds = new DriverManagerDataSource();
ds.setDriverClassName("com.mysql.cj.jdbc.Driver");
ds.setUrl("jdbc:mysql://localhost:3306/数据库名");
ds.setUsername("root");
ds.setPassword("密码");
  • 创建JdbcTemplate对象
JdbcTemplate jt = new JdbcTemplate();
  • 设置数据源
//给jt设置数据源
jt.setDataSource(ds);
  • 执行操作
jt.execute("sql语句");

优化操作

  • 思路:将其中的一些属性提取到配置文件中或者是spring中配置文件中进行数据注入
  • 代码示例
<bean id="jdbcTemplate" class="com.mysql.cj.jdbc.Driver">
    <property name="dataSource" ref="dataSource"></property>
</bean>

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="com.mysql.cj.jdbc.Driver"></property>
    <property name="url" value="jdbc:mysql://localhost:3306/数据库名"></property>
    <property name="username" value="root"></property>
    <property name="password" value="密码"></property>
</bean>
//测试类中

//获取容器
ApplicationContext ac = new ClassPathXmlApplicationContext("bean.xml");
//获取对象
JdbcTemplate jt = ac.getBean("jdbcTemplate",JdbcTemplate.class);
//执行操作
jt.execute("sql语句");

一些基本操作CRUD

  • 保存
jt.update("insert into account(name,money)values(?,?)","eee","33f");
  • 更新
jt.update("update account set name = ?,money = ? where id = ?","test",4567,7);
  • 删除
jt.update("delete from account where id = ?",8);
  • 查询所有
List<Account> list = jt.query("select * from account where money > ?",new BeanPropertyRowMapper<Account>(Account.class),1000f);
  • 查询返回一行一列
Integer count = jt.queryForObject("select count(*) from account where money > ?",Integer.class,1000f);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值