栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

jdbctemplate queryforlist(获取jdbctemplate)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

jdbctemplate queryforlist(获取jdbctemplate)

JDBCTemplate 作用:JDBCTemplate为Spring提供的操作JDBC的工具类 使用方式:

1.导入JDBCTemplate依赖坐标


     org.springframework
     spring-jdbc
     5.3.15


     org.springframework
     spring-tx
     5.3.15

spring-jdbc:提供jdbc-templatespring-tx:负责事务管理

2.在spring核心配置文件中注册jdbcTemplate



    
    
    
        
        
        
        
    
    
    
        
    

3.使用jdbcTemplate

package com.vmware.test;

import com.vmware.config.JDBCTemplateConfig;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = {JDBCTemplateConfig.class})
public class TestJDBCTemplateSpring {
    @Autowired
    private JdbcTemplate template;

    @Test
    public void testJdbc(){
        int row = template.update("insert into user values (?,?,?)", 1004, "waw", "abc123");
        System.out.println(row);
    }
}
JDBCTemplate常用API

template.update:用于增、删、改操作

参数1:sql语句

其他参数:用于sql语句参数化的位置传参

template.query:用于sql多结果查询操作

参数1:sql语句

参数2:RowMapper对象,用于查询结果和pojo对象进行关系映射 常用实现类:BeanPropertyRowMapper

其他参数:sql语句参数化的位置传参

template.queryForObject:用于sql语句单结果查询

参数1:sql语句

参数2:RowMapper对象 /聚合查询返回结果类型

其他参数:sql语句参数化的位置传参

代码示例:
package com.vmware.test;

import com.vmware.pojo.User;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import java.util.List;

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(value = "classpath:applicationContext.xml")
public class TestJDBCTemplateCRUD {
    @Autowired
    private JdbcTemplate template;

    @Test
    public void insert(){
        int row = template.update("insert into user values (?,?,?)", 1005, "jks", "12345678");
        System.out.println(row);
    }

    @Test
    public void delete(){
        int row = template.update("delete from user where id = ?", 1005);
        System.out.println(row);
    }
    @Test
    public void modify(){
        int row = template.update("update user set password = ? where id= ?",  "888888",1003);
        System.out.println(row);
    }

    @Test
    public void queryAll(){
        List userList = template.query("select * from user", new BeanPropertyRowMapper<>(User.class));
        System.out.println(userList);
    }
    
    @Test
    public void queryOne(){
        User user = template.queryForObject("select * from user where id=?", new BeanPropertyRowMapper<>(User.class), 1002);
        System.out.println(user);
    }
    
    @Test
    public void queryAgg(){
        Integer count = template.queryForObject("select count(*) from user", Integer.class);
        System.out.println(count);
    }
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/776380.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号